slick_rails 1.2.5.1 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/app/assets/images/ajax-loader.gif +0 -0
- data/app/assets/javascripts/slick.js +662 -327
- data/app/assets/stylesheets/slick.css.scss +204 -0
- data/lib/slick_rails/version.rb +1 -1
- metadata +4 -6
- data/.DS_Store +0 -0
- data/app/.DS_Store +0 -0
- data/app/assets/.DS_Store +0 -0
- data/app/assets/stylesheets/slick.css +0 -55
@@ -1,9 +1,22 @@
|
|
1
1
|
/*
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
_ _ _ _
|
3
|
+
___| (_) ___| | __ (_)___
|
4
|
+
/ __| | |/ __| |/ / | / __|
|
5
|
+
\__ \ | | (__| < _ | \__ \
|
6
|
+
|___/_|_|\___|_|\_(_)/ |___/
|
7
|
+
|__/
|
8
|
+
|
9
|
+
Author: Ken Wheeler
|
10
|
+
Website: http://kenwheeler.github.io
|
11
|
+
Date: 03/23/14
|
12
|
+
Docs: http://kenwheeler.github.io/slick
|
13
|
+
Repo: http://github.com/kenwheeler/slick
|
14
|
+
Issues: http://github.com/kenwheeler/slick/issues
|
15
|
+
|
5
16
|
*/
|
6
|
-
|
17
|
+
|
18
|
+
/* global window, document, define, jQuery, setInterval, clearInterval */
|
19
|
+
|
7
20
|
(function (factory) {
|
8
21
|
'use strict';
|
9
22
|
if (typeof define === 'function' && define.amd) {
|
@@ -14,19 +27,7 @@
|
|
14
27
|
|
15
28
|
}(function ($) {
|
16
29
|
'use strict';
|
17
|
-
var Slick = window.Slick || {}
|
18
|
-
|
19
|
-
/************ Helpers ***********/
|
20
|
-
|
21
|
-
// Function Binder
|
22
|
-
|
23
|
-
functionBinder = function (fn, me) {
|
24
|
-
return function () {
|
25
|
-
return fn.apply(me, arguments);
|
26
|
-
};
|
27
|
-
};
|
28
|
-
|
29
|
-
/********** End Helpers *********/
|
30
|
+
var Slick = window.Slick || {};
|
30
31
|
|
31
32
|
Slick = (function () {
|
32
33
|
|
@@ -35,10 +36,14 @@
|
|
35
36
|
var _ = this, responsiveSettings, breakpoint;
|
36
37
|
|
37
38
|
_.defaults = {
|
39
|
+
accessibility: true,
|
38
40
|
autoplay: false,
|
39
41
|
autoplaySpeed: 3000,
|
42
|
+
cssEase: 'ease',
|
40
43
|
dots: false,
|
41
44
|
draggable: true,
|
45
|
+
fade: false,
|
46
|
+
easing: 'linear',
|
42
47
|
arrows: true,
|
43
48
|
infinite: true,
|
44
49
|
onBeforeChange: null,
|
@@ -51,7 +56,8 @@
|
|
51
56
|
speed: 300,
|
52
57
|
swipe: true,
|
53
58
|
touchMove: true,
|
54
|
-
touchThreshold: 5
|
59
|
+
touchThreshold: 5,
|
60
|
+
vertical: false
|
55
61
|
};
|
56
62
|
|
57
63
|
_.initials = {
|
@@ -62,6 +68,7 @@
|
|
62
68
|
direction : 1,
|
63
69
|
dots : null,
|
64
70
|
listWidth : null,
|
71
|
+
listHeight : null,
|
65
72
|
loadIndex : 0,
|
66
73
|
nextArrow : null,
|
67
74
|
prevArrow : null,
|
@@ -81,9 +88,16 @@
|
|
81
88
|
|
82
89
|
_.activeBreakpoint = null;
|
83
90
|
_.animType = null;
|
91
|
+
_.animProp = null;
|
84
92
|
_.breakpoints = [];
|
85
93
|
_.breakpointSettings = [];
|
94
|
+
_.paused = false;
|
95
|
+
_.positionProp = null;
|
86
96
|
_.slider = $(element);
|
97
|
+
_.slidesCache = null;
|
98
|
+
_.cssTransitions = false;
|
99
|
+
_.windowWidth = 0;
|
100
|
+
_.windowTimer = null;
|
87
101
|
|
88
102
|
_.options = $.extend({}, _.defaults, settings);
|
89
103
|
|
@@ -106,19 +120,21 @@
|
|
106
120
|
});
|
107
121
|
}
|
108
122
|
|
109
|
-
_.autoPlay =
|
123
|
+
_.autoPlay = $.proxy(_.autoPlay,
|
124
|
+
_);
|
125
|
+
_.autoPlayClear = $.proxy(_.autoPlayClear,
|
110
126
|
_);
|
111
|
-
_.
|
127
|
+
_.changeSlide = $.proxy(_.changeSlide,
|
112
128
|
_);
|
113
|
-
_.
|
129
|
+
_.setPosition = $.proxy(_.setPosition,
|
114
130
|
_);
|
115
|
-
_.
|
131
|
+
_.swipeHandler = $.proxy(_.swipeHandler,
|
116
132
|
_);
|
117
|
-
_.
|
133
|
+
_.dragHandler = $.proxy(_.dragHandler,
|
118
134
|
_);
|
119
|
-
_.
|
135
|
+
_.keyHandler = $.proxy(_.keyHandler,
|
120
136
|
_);
|
121
|
-
_.autoPlayIterator =
|
137
|
+
_.autoPlayIterator = $.proxy(_.autoPlayIterator,
|
122
138
|
_);
|
123
139
|
|
124
140
|
_.init();
|
@@ -137,7 +153,7 @@
|
|
137
153
|
|
138
154
|
$(_.slider).addClass('slick-initialized');
|
139
155
|
_.buildOut();
|
140
|
-
_.
|
156
|
+
_.setProps();
|
141
157
|
_.startLoad();
|
142
158
|
_.loadSlider();
|
143
159
|
_.initializeEvents();
|
@@ -146,30 +162,119 @@
|
|
146
162
|
|
147
163
|
};
|
148
164
|
|
149
|
-
Slick.prototype.
|
165
|
+
Slick.prototype.addSlide = function (markup) {
|
166
|
+
|
167
|
+
var _ = this;
|
168
|
+
|
169
|
+
_.unload();
|
170
|
+
|
171
|
+
$(markup).appendTo(_.slideTrack);
|
172
|
+
|
173
|
+
_.slides = _.slideTrack.children(this.options.slide);
|
174
|
+
|
175
|
+
_.slideTrack.children(this.options.slide).remove();
|
176
|
+
|
177
|
+
_.slideTrack.append(_.slides);
|
178
|
+
|
179
|
+
_.reinit();
|
180
|
+
|
181
|
+
};
|
182
|
+
|
183
|
+
Slick.prototype.removeSlide = function (index) {
|
184
|
+
|
185
|
+
var _ = this;
|
186
|
+
|
187
|
+
_.unload();
|
188
|
+
|
189
|
+
if(_.slideCount < 1) {
|
190
|
+
return false;
|
191
|
+
}
|
192
|
+
|
193
|
+
$(_.slideTrack.children(this.options.slide).get(index)).remove();
|
194
|
+
|
195
|
+
_.slides = _.slideTrack.children(this.options.slide);
|
196
|
+
|
197
|
+
_.slideTrack.children(this.options.slide).remove();
|
198
|
+
|
199
|
+
_.slideTrack.append(_.slides);
|
200
|
+
|
201
|
+
_.reinit();
|
202
|
+
|
203
|
+
};
|
204
|
+
|
205
|
+
Slick.prototype.filterSlides = function (filter) {
|
150
206
|
|
151
207
|
var _ = this;
|
152
208
|
|
153
|
-
if
|
209
|
+
if(filter !== null) {
|
210
|
+
|
211
|
+
_.unload();
|
212
|
+
|
213
|
+
_.slideTrack.children(this.options.slide).remove();
|
214
|
+
|
215
|
+
_.slidesCache.filter(filter).appendTo(_.slideTrack);
|
216
|
+
|
217
|
+
_.reinit();
|
218
|
+
|
219
|
+
}
|
220
|
+
|
221
|
+
};
|
222
|
+
|
223
|
+
Slick.prototype.unfilterSlides = function () {
|
224
|
+
|
225
|
+
var _ = this;
|
154
226
|
|
155
|
-
|
227
|
+
if(_.slidesCache !== null) {
|
156
228
|
|
157
|
-
|
158
|
-
undefined) {
|
229
|
+
_.unload();
|
159
230
|
|
160
|
-
_.
|
231
|
+
_.slideTrack.children(this.options.slide).remove();
|
161
232
|
|
162
|
-
|
163
|
-
undefined) {
|
233
|
+
_.slidesCache.appendTo(_.slideTrack);
|
164
234
|
|
165
|
-
_.
|
235
|
+
_.reinit();
|
166
236
|
|
167
237
|
}
|
168
238
|
|
169
|
-
|
239
|
+
};
|
170
240
|
|
171
|
-
|
241
|
+
Slick.prototype.applyTransition = function (slide) {
|
242
|
+
|
243
|
+
var _ = this, transition,origin;
|
244
|
+
|
245
|
+
transition = 'all ' + _.options.speed + 'ms ' + _.options.cssEase;
|
246
|
+
if (_.options.vertical === false) {
|
247
|
+
origin = (_.listWidth / 2) + ' 50%';
|
248
|
+
} else {
|
249
|
+
origin = '';
|
250
|
+
}
|
172
251
|
|
252
|
+
if (_.options.fade === false) {
|
253
|
+
_.slideTrack.css({
|
254
|
+
transition: transition,
|
255
|
+
transformOrigin: origin
|
256
|
+
});
|
257
|
+
} else {
|
258
|
+
$(_.slides.get(slide)).css({
|
259
|
+
transition: transition
|
260
|
+
});
|
261
|
+
}
|
262
|
+
|
263
|
+
};
|
264
|
+
|
265
|
+
Slick.prototype.disableTransition = function (slide) {
|
266
|
+
|
267
|
+
var _ = this;
|
268
|
+
|
269
|
+
if (_.options.fade === false) {
|
270
|
+
_.slideTrack.css({
|
271
|
+
transition: '',
|
272
|
+
transformOrigin: ''
|
273
|
+
});
|
274
|
+
} else {
|
275
|
+
$(_.slides.get(slide)).css({
|
276
|
+
transition: ''
|
277
|
+
});
|
173
278
|
}
|
174
279
|
|
175
280
|
};
|
@@ -179,13 +284,13 @@
|
|
179
284
|
var _ = this;
|
180
285
|
|
181
286
|
if (_.autoPlayTimer) {
|
182
|
-
|
183
287
|
clearInterval(_.autoPlayTimer);
|
184
|
-
|
185
288
|
}
|
186
289
|
|
187
|
-
_.
|
188
|
-
_.
|
290
|
+
if(_.slideCount > _.options.slidesToShow && _.paused !== true) {
|
291
|
+
_.autoPlayTimer = setInterval(_.autoPlayIterator,
|
292
|
+
_.options.autoplaySpeed);
|
293
|
+
}
|
189
294
|
|
190
295
|
};
|
191
296
|
|
@@ -240,7 +345,7 @@
|
|
240
345
|
var _ = this, breakpoint, targetBreakpoint;
|
241
346
|
|
242
347
|
if (_.originalSettings.responsive && _.originalSettings
|
243
|
-
.responsive.length > -1) {
|
348
|
+
.responsive.length > -1 && _.originalSettings.responsive !== null) {
|
244
349
|
|
245
350
|
targetBreakpoint = null;
|
246
351
|
|
@@ -287,14 +392,14 @@
|
|
287
392
|
|
288
393
|
var _ = this;
|
289
394
|
|
290
|
-
if (_.options.arrows === true) {
|
395
|
+
if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {
|
291
396
|
|
292
397
|
_.prevArrow.hide();
|
293
398
|
_.nextArrow.hide();
|
294
399
|
|
295
400
|
}
|
296
401
|
|
297
|
-
if (_.options.dots === true) {
|
402
|
+
if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {
|
298
403
|
|
299
404
|
_.dots.hide();
|
300
405
|
|
@@ -308,14 +413,14 @@
|
|
308
413
|
|
309
414
|
var _ = this;
|
310
415
|
|
311
|
-
if (_.options.arrows === true) {
|
416
|
+
if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {
|
312
417
|
|
313
418
|
_.prevArrow.show();
|
314
419
|
_.nextArrow.show();
|
315
420
|
|
316
421
|
}
|
317
422
|
|
318
|
-
if (_.options.dots === true) {
|
423
|
+
if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {
|
319
424
|
|
320
425
|
_.dots.show();
|
321
426
|
|
@@ -335,10 +440,8 @@
|
|
335
440
|
|
336
441
|
_.setPosition();
|
337
442
|
|
338
|
-
_.slideTrack.
|
443
|
+
_.slideTrack.css({
|
339
444
|
opacity: 1
|
340
|
-
}, _.options.speed, function () {
|
341
|
-
_.setPosition();
|
342
445
|
});
|
343
446
|
|
344
447
|
if (document.readyState !== "complete") {
|
@@ -366,6 +469,7 @@
|
|
366
469
|
var _ = this;
|
367
470
|
|
368
471
|
_.listWidth = _.list.width();
|
472
|
+
_.listHeight = _.list.height();
|
369
473
|
_.slideWidth = Math.ceil(_.listWidth / _.options
|
370
474
|
.slidesToShow);
|
371
475
|
|
@@ -375,13 +479,13 @@
|
|
375
479
|
|
376
480
|
var _ = this;
|
377
481
|
|
378
|
-
if (_.options.arrows === true) {
|
482
|
+
if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {
|
379
483
|
|
380
484
|
_.prevArrow = $(
|
381
|
-
'<a href="javascript:void(0)">Previous</a>').appendTo(
|
485
|
+
'<a href="javascript:void(0)" tabIndex="-1">Previous</a>').appendTo(
|
382
486
|
_.slider).addClass('slick-prev');
|
383
487
|
_.nextArrow = $(
|
384
|
-
'<a href="javascript:void(0)">Next</a>').appendTo(
|
488
|
+
'<a href="javascript:void(0)" tabIndex="-1">Next</a>').appendTo(
|
385
489
|
_.slider).addClass('slick-next');
|
386
490
|
|
387
491
|
if (_.options.infinite !== true) {
|
@@ -396,13 +500,13 @@
|
|
396
500
|
|
397
501
|
var _ = this, i, dotString;
|
398
502
|
|
399
|
-
if (_.options.dots === true) {
|
503
|
+
if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {
|
400
504
|
|
401
505
|
dotString = '<ul class="slick-dots">';
|
402
506
|
|
403
507
|
for (i = 1; i <= _.slideCount; i += 1) {
|
404
508
|
|
405
|
-
dotString += '<li><a href="javascript:void(0)">' + i +
|
509
|
+
dotString += '<li><a href="javascript:void(0)" tabIndex="-1">' + i +
|
406
510
|
'</a></li>';
|
407
511
|
|
408
512
|
}
|
@@ -432,50 +536,66 @@
|
|
432
536
|
|
433
537
|
var _ = this, i, slideIndex;
|
434
538
|
|
435
|
-
if (_.options.infinite === true) {
|
539
|
+
if (_.options.infinite === true && _.options.fade === false) {
|
436
540
|
|
437
541
|
slideIndex = null;
|
438
542
|
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
543
|
+
if (_.slideCount > _.options.slidesToShow) {
|
544
|
+
|
545
|
+
for (i = _.slideCount; i > (_.slideCount -
|
546
|
+
_.options.slidesToShow); i -= 1) {
|
547
|
+
slideIndex = i - 1;
|
548
|
+
$(_.slides[slideIndex]).clone().prependTo(
|
549
|
+
_.slideTrack).addClass('slick-cloned');
|
550
|
+
}
|
551
|
+
for (i = 0; i < _.options.slidesToShow; i += 1) {
|
552
|
+
slideIndex = i;
|
553
|
+
$(_.slides[slideIndex]).clone().appendTo(
|
554
|
+
_.slideTrack).addClass('slick-cloned');
|
555
|
+
}
|
556
|
+
|
449
557
|
}
|
450
558
|
|
451
559
|
}
|
452
560
|
|
453
561
|
};
|
454
562
|
|
455
|
-
Slick.prototype.
|
563
|
+
Slick.prototype.setupPlaceholders = function () {
|
456
564
|
|
457
|
-
var
|
565
|
+
var _ = this, i, placeholders;
|
566
|
+
|
567
|
+
if(_.options.fade === true || _.options.vertical === true) {
|
568
|
+
_.options.slidesToShow = 1;
|
569
|
+
_.options.slidesToScroll = 1;
|
570
|
+
}
|
458
571
|
|
459
|
-
_.slides = $(_.options.slide +
|
460
|
-
':not(.slick-cloned)', _.slider).addClass(
|
461
|
-
'slick-slide');
|
462
|
-
_.slideCount = _.slides.length;
|
463
572
|
if ((_.slideCount % _.options.slidesToScroll) !==
|
464
|
-
0 && _.options.slidesToShow
|
573
|
+
0 && _.slideCount > _.options.slidesToShow) {
|
465
574
|
|
466
575
|
placeholders = Math.abs(_.options.slidesToScroll -
|
467
576
|
(_.slideCount % _.options.slidesToScroll)
|
468
577
|
);
|
469
578
|
for (i = 0; i < placeholders; i += 1) {
|
470
|
-
$('<div/>').appendTo(_.
|
579
|
+
$('<div/>').appendTo(_.slideTrack).addClass(
|
471
580
|
'slick-slide slick-placeholder');
|
472
581
|
}
|
473
582
|
_.slides = $('.slick-slide:not(.slick-cloned)',
|
474
583
|
_.slider);
|
475
584
|
_.slideCount = _.slides.length;
|
476
|
-
|
477
585
|
}
|
478
586
|
|
587
|
+
};
|
588
|
+
|
589
|
+
Slick.prototype.buildOut = function () {
|
590
|
+
|
591
|
+
var _ = this;
|
592
|
+
|
593
|
+
_.slides = $(_.options.slide +
|
594
|
+
':not(.slick-cloned)', _.slider).addClass(
|
595
|
+
'slick-slide');
|
596
|
+
_.slideCount = _.slides.length;
|
597
|
+
_.slidesCache = _.slides;
|
598
|
+
|
479
599
|
_.slider.addClass("slick-slider");
|
480
600
|
_.slideTrack = _.slides.wrapAll(
|
481
601
|
'<div class="slick-track"/>').parent();
|
@@ -483,12 +603,18 @@
|
|
483
603
|
'<div class="slick-list"/>').parent();
|
484
604
|
_.slideTrack.css('opacity', 0);
|
485
605
|
|
486
|
-
_.
|
606
|
+
if(_.options.accessibility === true) {
|
607
|
+
_.list.prop('tabIndex',0);
|
608
|
+
}
|
487
609
|
|
488
|
-
_.
|
610
|
+
_.setupPlaceholders();
|
489
611
|
|
490
612
|
_.setupInfinite();
|
491
613
|
|
614
|
+
_.buildArrows();
|
615
|
+
|
616
|
+
_.buildDots();
|
617
|
+
|
492
618
|
_.setSlideClasses(0);
|
493
619
|
|
494
620
|
if (_.options.draggable === true) {
|
@@ -498,41 +624,103 @@
|
|
498
624
|
};
|
499
625
|
|
500
626
|
Slick.prototype.setDimensions = function () {
|
627
|
+
|
501
628
|
var _ = this;
|
502
|
-
|
503
|
-
.slidesToShow);
|
629
|
+
|
504
630
|
_.list.find('.slick-slide').width(_.slideWidth);
|
505
|
-
_.
|
506
|
-
.
|
631
|
+
if (_.options.vertical === false) {
|
632
|
+
_.slideTrack.width(Math.ceil((_.slideWidth * _
|
633
|
+
.slider.find('.slick-slide').length)));
|
634
|
+
} else {
|
635
|
+
_.list.height(_.slides.first().outerHeight());
|
636
|
+
_.slideTrack.height(Math.ceil((_.listHeight * _
|
637
|
+
.slider.find('.slick-slide').length)));
|
638
|
+
}
|
639
|
+
|
507
640
|
};
|
508
641
|
|
509
642
|
Slick.prototype.setPosition = function () {
|
510
|
-
|
643
|
+
|
644
|
+
var _ = this, targetPosition;
|
645
|
+
|
511
646
|
_.setValues();
|
512
647
|
_.setDimensions();
|
513
648
|
|
649
|
+
_.slideOffset = 0;
|
650
|
+
|
514
651
|
if (_.options.infinite === true) {
|
515
|
-
|
652
|
+
if(_.slideCount > _.options.slidesToShow) {
|
653
|
+
_.slideOffset = (_.slideWidth * _.options.slidesToShow) * -1;
|
654
|
+
}
|
516
655
|
}
|
517
656
|
|
518
|
-
|
519
|
-
|
657
|
+
if (_.options.fade === false) {
|
658
|
+
if (_.options.vertical === false) {
|
659
|
+
targetPosition = ((_.currentSlide *
|
660
|
+
_.slideWidth) * -1) + _.slideOffset;
|
661
|
+
} else {
|
662
|
+
targetPosition = ((_.currentSlide *
|
663
|
+
_.listHeight) * -1) - _.listHeight;
|
664
|
+
}
|
665
|
+
_.setCSS(targetPosition);
|
666
|
+
} else {
|
667
|
+
_.setFade();
|
668
|
+
}
|
669
|
+
};
|
520
670
|
|
521
|
-
|
522
|
-
|
671
|
+
Slick.prototype.setProps = function () {
|
672
|
+
|
673
|
+
var _ = this;
|
674
|
+
|
675
|
+
_.positionProp = _.options.vertical === true ? 'top' : 'left';
|
676
|
+
|
677
|
+
if (_.positionProp === 'top') {
|
678
|
+
_.slider.addClass('slick-vertical');
|
523
679
|
} else {
|
524
|
-
|
525
|
-
|
526
|
-
|
680
|
+
_.slider.removeClass('slick-vertical');
|
681
|
+
}
|
682
|
+
|
683
|
+
if ( document.body.style.WebkitTransition !== undefined ||
|
684
|
+
document.body.style.MozTransition !== undefined ||
|
685
|
+
document.body.style.msTransition !== undefined ) {
|
686
|
+
_.cssTransitions = true;
|
527
687
|
}
|
528
688
|
|
689
|
+
if (document.body.style.MozTransform !== undefined) _.animType = 'MozTransform';
|
690
|
+
if (document.body.style.webkitTransform !== undefined) _.animType = 'webkitTransform';
|
691
|
+
if (document.body.style.msTransform !== undefined) _.animType = 'msTransform';
|
692
|
+
|
693
|
+
_.transformsEnabled = (_.animType !== null);
|
694
|
+
|
529
695
|
};
|
530
696
|
|
531
|
-
Slick.prototype.
|
697
|
+
Slick.prototype.setFade = function () {
|
698
|
+
|
699
|
+
var _ = this, targetLeft;
|
700
|
+
|
701
|
+
_.slides.each(function (index,element) {
|
702
|
+
targetLeft = (_.slideWidth * index) * -1;
|
703
|
+
$(element).css({
|
704
|
+
position: 'relative',
|
705
|
+
left: targetLeft,
|
706
|
+
top: 0,
|
707
|
+
zIndex: 800,
|
708
|
+
opacity: 0
|
709
|
+
});
|
710
|
+
});
|
711
|
+
|
712
|
+
$(_.slides.get(_.currentSlide)).css({
|
713
|
+
zIndex: 900,
|
714
|
+
opacity: 1
|
715
|
+
});
|
716
|
+
|
717
|
+
};
|
718
|
+
|
719
|
+
Slick.prototype.initArrowEvents = function () {
|
532
720
|
|
533
721
|
var _ = this;
|
534
722
|
|
535
|
-
if (_.options.arrows === true) {
|
723
|
+
if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {
|
536
724
|
_.prevArrow.on('click.slick', {
|
537
725
|
message: 'previous'
|
538
726
|
}, _.changeSlide);
|
@@ -541,12 +729,28 @@
|
|
541
729
|
}, _.changeSlide);
|
542
730
|
}
|
543
731
|
|
544
|
-
|
732
|
+
};
|
733
|
+
|
734
|
+
Slick.prototype.initDotEvents = function () {
|
735
|
+
|
736
|
+
var _ = this;
|
737
|
+
|
738
|
+
if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {
|
545
739
|
$('li a', _.dots).on('click.slick', {
|
546
740
|
message: 'index'
|
547
741
|
}, _.changeSlide);
|
548
742
|
}
|
549
743
|
|
744
|
+
};
|
745
|
+
|
746
|
+
Slick.prototype.initializeEvents = function () {
|
747
|
+
|
748
|
+
var _ = this;
|
749
|
+
|
750
|
+
_.initArrowEvents();
|
751
|
+
|
752
|
+
_.initDotEvents();
|
753
|
+
|
550
754
|
if (_.options.swipe === true) {
|
551
755
|
_.list.on('touchstart.slick', {
|
552
756
|
action: 'start',
|
@@ -560,6 +764,10 @@
|
|
560
764
|
action: 'end',
|
561
765
|
kind: 'touch'
|
562
766
|
}, _.swipeHandler);
|
767
|
+
_.list.on('touchcancel.slick', {
|
768
|
+
action: 'end',
|
769
|
+
kind: 'touch'
|
770
|
+
}, _.swipeHandler);
|
563
771
|
}
|
564
772
|
|
565
773
|
if (_.options.draggable === true) {
|
@@ -576,7 +784,7 @@
|
|
576
784
|
kind: 'drag'
|
577
785
|
}, _.swipeHandler);
|
578
786
|
_.list.on('mouseleave.slick', {
|
579
|
-
action: '
|
787
|
+
action: 'end',
|
580
788
|
kind: 'drag'
|
581
789
|
}, _.swipeHandler);
|
582
790
|
}
|
@@ -586,13 +794,24 @@
|
|
586
794
|
_.list.on('mouseleave.slick', _.autoPlay);
|
587
795
|
}
|
588
796
|
|
589
|
-
|
797
|
+
_.list.on('keydown.slick', _.keyHandler);
|
590
798
|
|
591
|
-
$(window).on('
|
799
|
+
$(window).on('orientationchange.slick', function(){
|
592
800
|
_.checkResponsive();
|
593
801
|
_.setPosition();
|
594
802
|
});
|
595
803
|
|
804
|
+
$(window).resize(function () {
|
805
|
+
if ($(window).width !== _.windowWidth) {
|
806
|
+
clearTimeout(_.windowDelay);
|
807
|
+
_.windowDelay = window.setTimeout(function () {
|
808
|
+
_.windowWidth = $(window).width();
|
809
|
+
_.checkResponsive();
|
810
|
+
_.setPosition();
|
811
|
+
}, 50);
|
812
|
+
}
|
813
|
+
});
|
814
|
+
|
596
815
|
$(window).on('load.slick', _.setPosition);
|
597
816
|
|
598
817
|
};
|
@@ -637,40 +856,128 @@
|
|
637
856
|
|
638
857
|
};
|
639
858
|
|
859
|
+
Slick.prototype.updateArrows = function () {
|
860
|
+
|
861
|
+
var _ = this;
|
862
|
+
|
863
|
+
if (_.options.arrows === true && _.options.infinite !==
|
864
|
+
true && _.slideCount > _.options.slidesToShow) {
|
865
|
+
if (_.currentSlide === 0) {
|
866
|
+
_.prevArrow.addClass('slick-disabled');
|
867
|
+
_.nextArrow.removeClass('slick-disabled');
|
868
|
+
} else if (_.currentSlide >= (_.slideCount /
|
869
|
+
_.options.slidesToScroll * _.options.slidesToShow
|
870
|
+
) - _.options.slidesToScroll) {
|
871
|
+
_.nextArrow.addClass('slick-disabled');
|
872
|
+
_.prevArrow.removeClass('slick-disabled');
|
873
|
+
} else {
|
874
|
+
_.prevArrow.removeClass('slick-disabled');
|
875
|
+
_.nextArrow.removeClass('slick-disabled');
|
876
|
+
}
|
877
|
+
}
|
878
|
+
|
879
|
+
};
|
880
|
+
|
881
|
+
Slick.prototype.fadeSlide = function (slideIndex, callback) {
|
882
|
+
|
883
|
+
var _ = this;
|
884
|
+
|
885
|
+
if(_.cssTransitions === false) {
|
886
|
+
|
887
|
+
$(_.slides.get(slideIndex)).css({zIndex: 1000});
|
888
|
+
|
889
|
+
$(_.slides.get(slideIndex)).animate({
|
890
|
+
opacity: 1
|
891
|
+
}, _.options.speed,_.options.easing, callback);
|
892
|
+
|
893
|
+
} else {
|
894
|
+
|
895
|
+
_.applyTransition(slideIndex);
|
896
|
+
|
897
|
+
$(_.slides.get(slideIndex)).css({
|
898
|
+
opacity: 1,
|
899
|
+
zIndex: 1000
|
900
|
+
});
|
901
|
+
|
902
|
+
if(callback) {
|
903
|
+
setTimeout(function(){
|
904
|
+
|
905
|
+
_.disableTransition(slideIndex);
|
906
|
+
|
907
|
+
callback.call();
|
908
|
+
}, _.options.speed);
|
909
|
+
}
|
910
|
+
|
911
|
+
}
|
912
|
+
|
913
|
+
};
|
914
|
+
|
640
915
|
Slick.prototype.animateSlide = function (targetLeft,
|
641
916
|
callback) {
|
642
917
|
|
643
918
|
var animProps = {}, _ = this;
|
644
919
|
|
645
|
-
if (_.options.onBeforeChange !== null) {
|
646
|
-
_.options.onBeforeChange.call();
|
647
|
-
}
|
648
|
-
|
649
920
|
if (_.transformsEnabled === false) {
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
921
|
+
if (_.options.vertical === false) {
|
922
|
+
_.slideTrack.animate({
|
923
|
+
left: targetLeft
|
924
|
+
}, _.options.speed,_.options.easing, callback);
|
925
|
+
} else {
|
926
|
+
_.slideTrack.animate({
|
927
|
+
top: targetLeft
|
928
|
+
}, _.options.speed,_.options.easing, callback);
|
929
|
+
}
|
654
930
|
|
655
931
|
} else {
|
656
932
|
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
933
|
+
if(_.cssTransitions === false) {
|
934
|
+
|
935
|
+
$({
|
936
|
+
animStart: _.currentLeft
|
937
|
+
}).animate({
|
938
|
+
animStart: targetLeft
|
939
|
+
}, {
|
940
|
+
duration: _.options.speed,
|
941
|
+
easing: _.options.easing,
|
942
|
+
step: function (now) {
|
943
|
+
if (_.options.vertical === false) {
|
944
|
+
animProps[_.animType] = "translate(" +
|
945
|
+
now + "px, 0px)";
|
946
|
+
_.slideTrack.css(animProps);
|
947
|
+
} else {
|
948
|
+
animProps[_.animType] = "translate(0px," +
|
949
|
+
now + "px,0px)";
|
950
|
+
_.slideTrack.css(animProps);
|
951
|
+
}
|
952
|
+
},
|
953
|
+
complete: function () {
|
954
|
+
if (callback) {
|
955
|
+
callback.call();
|
956
|
+
}
|
671
957
|
}
|
958
|
+
});
|
959
|
+
|
960
|
+
} else {
|
961
|
+
|
962
|
+
_.applyTransition();
|
963
|
+
|
964
|
+
if (_.options.vertical === false) {
|
965
|
+
animProps[_.animType] = "translate3d(" + targetLeft + "px, 0px, 0px)";
|
966
|
+
} else {
|
967
|
+
animProps[_.animType] = "translate3d(0px," + targetLeft + "px, 0px)";
|
968
|
+
}
|
969
|
+
_.slideTrack.css(animProps);
|
970
|
+
|
971
|
+
if(callback) {
|
972
|
+
setTimeout(function(){
|
973
|
+
|
974
|
+
_.disableTransition();
|
975
|
+
|
976
|
+
callback.call();
|
977
|
+
}, _.options.speed);
|
672
978
|
}
|
673
|
-
|
979
|
+
|
980
|
+
}
|
674
981
|
|
675
982
|
}
|
676
983
|
|
@@ -686,6 +993,10 @@
|
|
686
993
|
|
687
994
|
var _ = this;
|
688
995
|
|
996
|
+
if (_.options.onAfterChange !== null && index !== _.currentSlide) {
|
997
|
+
_.options.onAfterChange.call(_, index);
|
998
|
+
}
|
999
|
+
|
689
1000
|
_.animating = false;
|
690
1001
|
|
691
1002
|
_.currentSlide = index;
|
@@ -696,28 +1007,10 @@
|
|
696
1007
|
|
697
1008
|
_.updateDots();
|
698
1009
|
|
699
|
-
|
700
|
-
_.autoPlay();
|
701
|
-
}
|
702
|
-
|
703
|
-
if (_.options.onAfterChange !== null) {
|
704
|
-
_.options.onAfterChange.call();
|
705
|
-
}
|
1010
|
+
_.updateArrows();
|
706
1011
|
|
707
|
-
if (_.options.
|
708
|
-
|
709
|
-
if (_.currentSlide === 0) {
|
710
|
-
_.prevArrow.addClass('slick-disabled');
|
711
|
-
_.nextArrow.removeClass('slick-disabled');
|
712
|
-
} else if (_.currentSlide >= (_.slideCount /
|
713
|
-
_.options.slidesToScroll * _.options.slidesToShow
|
714
|
-
) - _.options.slidesToScroll) {
|
715
|
-
_.nextArrow.addClass('slick-disabled');
|
716
|
-
_.prevArrow.removeClass('slick-disabled');
|
717
|
-
} else {
|
718
|
-
_.prevArrow.removeClass('slick-disabled');
|
719
|
-
_.nextArrow.removeClass('slick-disabled');
|
720
|
-
}
|
1012
|
+
if (_.options.autoplay === true && _.paused === false) {
|
1013
|
+
_.autoPlay();
|
721
1014
|
}
|
722
1015
|
|
723
1016
|
_.setSlideClasses(_.currentSlide);
|
@@ -726,255 +1019,200 @@
|
|
726
1019
|
|
727
1020
|
Slick.prototype.slideHandler = function (index) {
|
728
1021
|
|
729
|
-
var targetSlide, slideLeft, targetLeft =
|
730
|
-
null,
|
731
|
-
_ = this;
|
1022
|
+
var targetSlide, animSlide, slideLeft, targetLeft = null, _ = this;
|
732
1023
|
|
733
1024
|
if(_.animating === true) {
|
734
1025
|
return false;
|
735
1026
|
}
|
736
1027
|
|
737
1028
|
targetSlide = index;
|
738
|
-
targetLeft = ((targetSlide * _.slideWidth) * -1) +
|
739
|
-
_.slideOffset;
|
740
|
-
slideLeft = ((_.currentSlide * _.slideWidth) * -1) +
|
741
|
-
_.slideOffset;
|
742
|
-
|
743
|
-
if (_.options.autoplay === true) {
|
744
|
-
clearInterval(_.autoPlayTimer);
|
745
|
-
}
|
746
1029
|
|
747
|
-
if
|
748
|
-
_.
|
1030
|
+
if(_.options.vertical === false) {
|
1031
|
+
targetLeft = ((targetSlide * _.slideWidth) * -1) + _.slideOffset;
|
1032
|
+
slideLeft = ((_.currentSlide * _.slideWidth) * -1) + _.slideOffset;
|
749
1033
|
} else {
|
750
|
-
_.
|
1034
|
+
targetLeft = ((targetSlide * _.listHeight) * -1) - _.listHeight;
|
1035
|
+
slideLeft = ((_.currentSlide * _.listHeight) * -1) - _.listHeight;
|
751
1036
|
}
|
752
1037
|
|
753
|
-
if (
|
754
|
-
|
755
|
-
|
756
|
-
|
757
|
-
|
758
|
-
|
759
|
-
|
760
|
-
|
761
|
-
_.postSlide(_.slideCount - _.options
|
762
|
-
.slidesToScroll);
|
763
|
-
|
764
|
-
});
|
765
|
-
|
766
|
-
} else {
|
767
|
-
|
768
|
-
_.animateSlide(slideLeft);
|
1038
|
+
if (_.options.infinite === false && (index < 0 || index > (_.slideCount -1))) {
|
1039
|
+
targetSlide = _.currentSlide;
|
1040
|
+
_.animateSlide(slideLeft, function () {
|
1041
|
+
_.postSlide(targetSlide);
|
1042
|
+
});
|
1043
|
+
return false;
|
1044
|
+
}
|
769
1045
|
|
770
|
-
|
1046
|
+
if (_.options.autoplay === true) {
|
1047
|
+
clearInterval(_.autoPlayTimer);
|
1048
|
+
}
|
771
1049
|
|
772
|
-
|
1050
|
+
_.currentLeft = _.swipeLeft === null ? slideLeft : _.swipeLeft;
|
773
1051
|
|
1052
|
+
if (targetSlide < 0) {
|
1053
|
+
animSlide = _.slideCount - _.options.slidesToScroll;
|
774
1054
|
} else if (targetSlide > (_.slideCount - 1)) {
|
775
|
-
|
776
|
-
if (_.options.infinite === true) {
|
777
|
-
|
778
|
-
_.animating = true;
|
779
|
-
|
780
|
-
_.animateSlide(targetLeft, function () {
|
781
|
-
|
782
|
-
_.postSlide(0);
|
783
|
-
|
784
|
-
});
|
785
|
-
|
786
|
-
} else {
|
787
|
-
|
788
|
-
_.animateSlide(slideLeft);
|
789
|
-
|
790
|
-
return false;
|
791
|
-
|
792
|
-
}
|
793
|
-
|
1055
|
+
animSlide = 0;
|
794
1056
|
} else {
|
1057
|
+
animSlide = targetSlide;
|
1058
|
+
}
|
795
1059
|
|
796
|
-
|
797
|
-
|
798
|
-
_.animateSlide(targetLeft, function () {
|
1060
|
+
_.animating = true;
|
799
1061
|
|
800
|
-
|
1062
|
+
if (_.options.onBeforeChange !== null && index !== _.currentSlide) {
|
1063
|
+
_.options.onBeforeChange.call(_, animSlide);
|
1064
|
+
}
|
801
1065
|
|
1066
|
+
if (_.options.fade === true) {
|
1067
|
+
_.fadeSlide(animSlide, function(){
|
1068
|
+
_.postSlide(animSlide);
|
802
1069
|
});
|
803
|
-
|
1070
|
+
return false;
|
804
1071
|
}
|
1072
|
+
_.animateSlide(targetLeft, function () {
|
1073
|
+
_.postSlide(animSlide);
|
1074
|
+
});
|
805
1075
|
|
806
1076
|
};
|
807
1077
|
|
808
|
-
Slick.prototype.
|
1078
|
+
Slick.prototype.setCSS = function (position) {
|
809
1079
|
|
810
|
-
var _ = this,
|
1080
|
+
var _ = this, positionProps = {}, x, y;
|
811
1081
|
|
812
|
-
|
1082
|
+
x = _.positionProp == 'left' ? position + 'px' : '0px';
|
1083
|
+
y = _.positionProp == 'top' ? position + 'px' : '0px';
|
813
1084
|
|
814
|
-
|
815
|
-
.kind === 'drag') {
|
1085
|
+
positionProps[_.positionProp] = position;
|
816
1086
|
|
817
|
-
|
818
|
-
|
819
|
-
|
820
|
-
|
821
|
-
|
1087
|
+
if (_.transformsEnabled === false) {
|
1088
|
+
_.slideTrack.css(positionProps);
|
1089
|
+
} else {
|
1090
|
+
positionProps = {};
|
1091
|
+
if(_.cssTransitions === false) {
|
1092
|
+
positionProps[_.animType] = "translate(" + x + ", " + y + ")";
|
1093
|
+
_.slideTrack.css(positionProps);
|
822
1094
|
} else {
|
823
|
-
_.
|
824
|
-
_.
|
825
|
-
curX = event.clientX;
|
826
|
-
_.touchObject.startY = _.touchObject.
|
827
|
-
curY = event.clientY;
|
1095
|
+
positionProps[_.animType] = "translate3d(" + x + ", " + y + ", 0px)";
|
1096
|
+
_.slideTrack.css(positionProps);
|
828
1097
|
}
|
829
|
-
|
830
|
-
} else {
|
831
|
-
|
832
|
-
_.touchObject = {};
|
833
|
-
|
834
1098
|
}
|
835
1099
|
|
836
1100
|
};
|
837
1101
|
|
838
|
-
Slick.prototype.
|
1102
|
+
Slick.prototype.swipeStart = function (event) {
|
839
1103
|
|
840
|
-
var _ = this,
|
1104
|
+
var _ = this, touches;
|
841
1105
|
|
842
|
-
touches = event.originalEvent.touches;
|
843
1106
|
|
844
|
-
|
845
|
-
_.
|
1107
|
+
if (_.touchObject.fingerCount !== 1 || _.slideCount <= _.options.slidesToShow) {
|
1108
|
+
_.touchObject = {};
|
1109
|
+
return false;
|
1110
|
+
}
|
846
1111
|
|
847
|
-
if
|
848
|
-
|
1112
|
+
if(event.originalEvent !== undefined && event.originalEvent.touches !== undefined) {
|
1113
|
+
touches = event.originalEvent.touches[0];
|
1114
|
+
}
|
849
1115
|
|
850
|
-
|
851
|
-
|
852
|
-
_.touchObject.curY = touches[0].pageY;
|
853
|
-
} else {
|
854
|
-
_.touchObject.curX = event.clientX;
|
855
|
-
_.touchObject.curY = event.clientY;
|
856
|
-
}
|
1116
|
+
_.touchObject.startX = _.touchObject.curX = touches !== undefined ? touches.pageX : event.clientX;
|
1117
|
+
_.touchObject.startY = _.touchObject.curY = touches !== undefined ? touches.pageY : event.clientY;
|
857
1118
|
|
858
|
-
|
859
|
-
Math.pow(_.touchObject.curX - _.touchObject
|
860
|
-
.startX, 2)));
|
1119
|
+
_.list.addClass('dragging');
|
861
1120
|
|
862
|
-
|
863
|
-
'down') {
|
1121
|
+
};
|
864
1122
|
|
865
|
-
|
1123
|
+
Slick.prototype.swipeMove = function (event) {
|
866
1124
|
|
867
|
-
|
868
|
-
.startX) {
|
1125
|
+
var _ = this, curLeft, swipeDirection, positionOffset, touches;
|
869
1126
|
|
870
|
-
|
1127
|
+
touches = event.originalEvent !== undefined ? event.originalEvent.touches : null;
|
871
1128
|
|
872
|
-
|
873
|
-
|
874
|
-
|
875
|
-
false) {
|
876
|
-
_.slideTrack.css('left',
|
877
|
-
newLeft);
|
878
|
-
} else {
|
879
|
-
animProps[_.animType] =
|
880
|
-
"translate(" + newLeft +
|
881
|
-
"px, 0px)";
|
882
|
-
_.slideTrack.css(animProps);
|
883
|
-
_.swipeLeft = newLeft;
|
884
|
-
}
|
1129
|
+
curLeft = _.options.vertical === false ? ((_.currentSlide * _.slideWidth) * -1) +
|
1130
|
+
_.slideOffset : ((_.currentSlide * _.listHeight) * -1) -
|
1131
|
+
_.listHeight;
|
885
1132
|
|
886
|
-
|
1133
|
+
if((!_.list.hasClass('dragging') && event.data.kind === 'drag') ||
|
1134
|
+
touches && touches.length !== 1){
|
1135
|
+
return false;
|
1136
|
+
}
|
887
1137
|
|
888
|
-
|
1138
|
+
_.touchObject.curX = touches !== undefined ? touches[0].pageX : event.clientX;
|
1139
|
+
_.touchObject.curY = touches !== undefined ? touches[0].pageY : event.clientY;
|
889
1140
|
|
890
|
-
|
1141
|
+
_.touchObject.swipeLength = Math.round(Math.sqrt(
|
1142
|
+
Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));
|
891
1143
|
|
892
|
-
|
893
|
-
.swipeLength;
|
894
|
-
if (_.transformsEnabled ===
|
895
|
-
false) {
|
896
|
-
_.slideTrack.css('left',
|
897
|
-
newLeft);
|
898
|
-
} else {
|
899
|
-
animProps[_.animType] =
|
900
|
-
"translate(" + newLeft +
|
901
|
-
"px, 0px)";
|
902
|
-
_.slideTrack.css(animProps);
|
903
|
-
_.swipeLeft = newLeft;
|
904
|
-
}
|
1144
|
+
swipeDirection = _.swipeDirection();
|
905
1145
|
|
906
|
-
|
1146
|
+
if (swipeDirection === 'vertical') {
|
1147
|
+
return false;
|
1148
|
+
}
|
907
1149
|
|
908
|
-
|
1150
|
+
if(event.originalEvent !== undefined) {
|
1151
|
+
event.preventDefault();
|
1152
|
+
}
|
909
1153
|
|
910
|
-
|
1154
|
+
positionOffset = _.touchObject.curX > _.touchObject.startX ? 1 : -1;
|
911
1155
|
|
1156
|
+
if(_.options.vertical === false) {
|
1157
|
+
_.swipeLeft = curLeft + _.touchObject.swipeLength * positionOffset;
|
912
1158
|
} else {
|
1159
|
+
_.swipeLeft = curLeft + (_.touchObject
|
1160
|
+
.swipeLength * (_.listHeight / _.listWidth)) * positionOffset;
|
1161
|
+
}
|
913
1162
|
|
914
|
-
|
1163
|
+
if(_.options.fade === true || _.options.touchMove === false) {
|
1164
|
+
return false;
|
1165
|
+
}
|
915
1166
|
|
1167
|
+
if (_.animating === true) {
|
1168
|
+
_.swipeLeft = null;
|
1169
|
+
return false;
|
916
1170
|
}
|
917
1171
|
|
1172
|
+
_.setCSS(_.swipeLeft);
|
1173
|
+
|
918
1174
|
};
|
919
1175
|
|
920
1176
|
Slick.prototype.swipeEnd = function (event) {
|
921
1177
|
|
922
1178
|
var _ = this;
|
923
1179
|
|
924
|
-
|
925
|
-
.curX !== 0) || event.data.kind === 'drag') {
|
1180
|
+
_.list.removeClass('dragging');
|
926
1181
|
|
927
|
-
|
928
|
-
|
1182
|
+
if ((_.touchObject.fingerCount !== 0) && event.data.kind !== 'drag') {
|
1183
|
+
_.touchObject = {};
|
1184
|
+
return false;
|
1185
|
+
}
|
929
1186
|
|
930
|
-
|
1187
|
+
if (_.touchObject.swipeLength >= _.touchObject.minSwipe) {
|
931
1188
|
|
1189
|
+
switch (_.swipeDirection()) {
|
932
1190
|
case 'left':
|
933
|
-
|
934
|
-
_.slideHandler(_.currentSlide +
|
935
|
-
_.options.slidesToScroll);
|
1191
|
+
_.slideHandler(_.currentSlide + _.options.slidesToScroll);
|
936
1192
|
_.touchObject = {};
|
937
|
-
|
938
|
-
break;
|
1193
|
+
break;
|
939
1194
|
|
940
1195
|
case 'right':
|
941
|
-
|
942
|
-
_.slideHandler(_.currentSlide -
|
943
|
-
_.options.slidesToScroll);
|
1196
|
+
_.slideHandler(_.currentSlide - _.options.slidesToScroll);
|
944
1197
|
_.touchObject = {};
|
945
|
-
|
946
|
-
break;
|
947
|
-
|
948
|
-
}
|
949
|
-
|
950
|
-
} else {
|
951
|
-
|
952
|
-
_.slideHandler(_.currentSlide);
|
953
|
-
_.touchObject = {};
|
954
|
-
|
955
|
-
}
|
956
|
-
|
957
|
-
if (event.data.kind === 'drag') {
|
958
|
-
_.list.removeClass('dragging');
|
1198
|
+
break;
|
959
1199
|
}
|
960
1200
|
|
961
1201
|
} else {
|
962
|
-
|
1202
|
+
_.slideHandler(_.currentSlide);
|
963
1203
|
_.touchObject = {};
|
964
|
-
|
965
1204
|
}
|
966
1205
|
|
967
1206
|
};
|
968
1207
|
|
969
|
-
Slick.prototype.
|
1208
|
+
Slick.prototype.keyHandler = function (event) {
|
970
1209
|
|
971
1210
|
var _ = this;
|
972
1211
|
|
973
|
-
|
974
|
-
|
975
|
-
if (
|
976
|
-
_.
|
977
|
-
_.touchObject = {};
|
1212
|
+
if (event.keyCode === 37) {
|
1213
|
+
_.changeSlide({data: {message: 'previous'}});
|
1214
|
+
} else if (event.keyCode === 39) {
|
1215
|
+
_.changeSlide({data: {message: 'next'}});
|
978
1216
|
}
|
979
1217
|
|
980
1218
|
};
|
@@ -983,38 +1221,26 @@
|
|
983
1221
|
|
984
1222
|
var _ = this;
|
985
1223
|
|
986
|
-
if
|
987
|
-
_.touchObject.fingerCount = event.originalEvent.touches
|
988
|
-
.length;
|
1224
|
+
if(event.originalEvent !== undefined) {
|
1225
|
+
_.touchObject.fingerCount = event.originalEvent.touches !== undefined ?
|
1226
|
+
event.originalEvent.touches.length : 1;
|
989
1227
|
}
|
990
1228
|
|
991
|
-
_.touchObject.minSwipe = _.
|
1229
|
+
_.touchObject.minSwipe = _.listWidth / _.options
|
992
1230
|
.touchThreshold;
|
993
1231
|
|
994
1232
|
switch (event.data.action) {
|
995
1233
|
|
996
1234
|
case 'start':
|
997
|
-
|
998
1235
|
_.swipeStart(event);
|
999
|
-
|
1000
1236
|
break;
|
1001
1237
|
|
1002
1238
|
case 'move':
|
1003
|
-
|
1004
1239
|
_.swipeMove(event);
|
1005
|
-
|
1006
1240
|
break;
|
1007
1241
|
|
1008
1242
|
case 'end':
|
1009
|
-
|
1010
1243
|
_.swipeEnd(event);
|
1011
|
-
|
1012
|
-
break;
|
1013
|
-
|
1014
|
-
case 'cancel':
|
1015
|
-
|
1016
|
-
_.swipeCancel();
|
1017
|
-
|
1018
1244
|
break;
|
1019
1245
|
|
1020
1246
|
}
|
@@ -1043,11 +1269,8 @@
|
|
1043
1269
|
if ((swipeAngle >= 135) && (swipeAngle <= 225)) {
|
1044
1270
|
return 'right';
|
1045
1271
|
}
|
1046
|
-
if ((swipeAngle > 45) && (swipeAngle < 135)) {
|
1047
|
-
return 'down';
|
1048
|
-
}
|
1049
1272
|
|
1050
|
-
return '
|
1273
|
+
return 'vertical';
|
1051
1274
|
|
1052
1275
|
};
|
1053
1276
|
|
@@ -1063,8 +1286,67 @@
|
|
1063
1286
|
|
1064
1287
|
};
|
1065
1288
|
|
1289
|
+
Slick.prototype.unload = function () {
|
1290
|
+
var _ = this;
|
1291
|
+
$('.slick-cloned', _.slider).remove();
|
1292
|
+
$('.slick-placeholder', _.slider).remove();
|
1293
|
+
if (_.dots) {
|
1294
|
+
_.dots.remove();
|
1295
|
+
}
|
1296
|
+
if (_.prevArrow) {
|
1297
|
+
_.prevArrow.remove();
|
1298
|
+
_.nextArrow.remove();
|
1299
|
+
}
|
1300
|
+
_.slides.removeClass(
|
1301
|
+
'slick-slide slick-active slick-visible').removeAttr('style');
|
1302
|
+
};
|
1303
|
+
|
1304
|
+
Slick.prototype.reinit = function () {
|
1305
|
+
|
1306
|
+
var _ = this;
|
1307
|
+
|
1308
|
+
_.slides = $(_.options.slide +
|
1309
|
+
':not(.slick-cloned)', _.slideTrack).addClass(
|
1310
|
+
'slick-slide');
|
1311
|
+
|
1312
|
+
_.slideCount = _.slides.length;
|
1313
|
+
|
1314
|
+
if(_.currentSlide >= _.slideCount && _.currentSlide !== 0) {
|
1315
|
+
_.currentSlide = _.currentSlide - _.options.slidesToScroll;
|
1316
|
+
}
|
1317
|
+
|
1318
|
+
_.setProps();
|
1319
|
+
|
1320
|
+
_.setupPlaceholders();
|
1321
|
+
|
1322
|
+
_.setupInfinite();
|
1323
|
+
|
1324
|
+
_.buildArrows();
|
1325
|
+
|
1326
|
+
_.updateArrows();
|
1327
|
+
|
1328
|
+
_.initArrowEvents();
|
1329
|
+
|
1330
|
+
_.buildDots();
|
1331
|
+
|
1332
|
+
_.updateDots();
|
1333
|
+
|
1334
|
+
_.initDotEvents();
|
1335
|
+
|
1336
|
+
_.setSlideClasses(0);
|
1337
|
+
|
1338
|
+
_.setPosition();
|
1339
|
+
|
1340
|
+
};
|
1341
|
+
|
1066
1342
|
Slick.prototype.destroy = function () {
|
1343
|
+
|
1067
1344
|
var _ = this;
|
1345
|
+
|
1346
|
+
_.autoPlayClear();
|
1347
|
+
|
1348
|
+
_.touchObject = {};
|
1349
|
+
|
1068
1350
|
$('.slick-cloned', _.slider).remove();
|
1069
1351
|
$('.slick-placeholder', _.slider).remove();
|
1070
1352
|
if (_.dots) {
|
@@ -1076,9 +1358,10 @@
|
|
1076
1358
|
}
|
1077
1359
|
_.slides.unwrap().unwrap();
|
1078
1360
|
_.slides.removeClass(
|
1079
|
-
'slick-slide slick-active slick-visible').
|
1361
|
+
'slick-slide slick-active slick-visible').removeAttr('style');
|
1080
1362
|
_.slider.removeClass('slick-slider');
|
1081
1363
|
_.slider.removeClass('slick-initialized');
|
1364
|
+
|
1082
1365
|
};
|
1083
1366
|
|
1084
1367
|
$.fn.slick = function (options) {
|
@@ -1090,6 +1373,42 @@
|
|
1090
1373
|
});
|
1091
1374
|
};
|
1092
1375
|
|
1376
|
+
$.fn.slickAdd = function (slide) {
|
1377
|
+
var _ = this;
|
1378
|
+
return _.each(function (index, element) {
|
1379
|
+
|
1380
|
+
element.slick.addSlide(slide);
|
1381
|
+
|
1382
|
+
});
|
1383
|
+
};
|
1384
|
+
|
1385
|
+
$.fn.slickRemove = function (slide) {
|
1386
|
+
var _ = this;
|
1387
|
+
return _.each(function (index, element) {
|
1388
|
+
|
1389
|
+
element.slick.removeSlide(slide);
|
1390
|
+
|
1391
|
+
});
|
1392
|
+
};
|
1393
|
+
|
1394
|
+
$.fn.slickFilter = function (filter) {
|
1395
|
+
var _ = this;
|
1396
|
+
return _.each(function (index, element) {
|
1397
|
+
|
1398
|
+
element.slick.filterSlides(filter);
|
1399
|
+
|
1400
|
+
});
|
1401
|
+
};
|
1402
|
+
|
1403
|
+
$.fn.slickUnfilter = function () {
|
1404
|
+
var _ = this;
|
1405
|
+
return _.each(function (index, element) {
|
1406
|
+
|
1407
|
+
element.slick.unfilterSlides();
|
1408
|
+
|
1409
|
+
});
|
1410
|
+
};
|
1411
|
+
|
1093
1412
|
$.fn.slickGoTo = function (slide) {
|
1094
1413
|
var _ = this;
|
1095
1414
|
return _.each(function (index, element) {
|
@@ -1122,6 +1441,7 @@
|
|
1122
1441
|
return _.each(function (index, element) {
|
1123
1442
|
|
1124
1443
|
element.slick.autoPlayClear();
|
1444
|
+
element.slick.paused = true;
|
1125
1445
|
|
1126
1446
|
});
|
1127
1447
|
};
|
@@ -1130,11 +1450,26 @@
|
|
1130
1450
|
var _ = this;
|
1131
1451
|
return _.each(function (index, element) {
|
1132
1452
|
|
1453
|
+
element.slick.paused = false;
|
1133
1454
|
element.slick.autoPlay();
|
1134
1455
|
|
1135
1456
|
});
|
1136
1457
|
};
|
1137
1458
|
|
1459
|
+
$.fn.slickSetOption = function (option, value, refresh) {
|
1460
|
+
var _ = this;
|
1461
|
+
return _.each(function (index, element) {
|
1462
|
+
|
1463
|
+
element.slick.options[option] = value;
|
1464
|
+
|
1465
|
+
if(refresh === true) {
|
1466
|
+
element.slick.unload();
|
1467
|
+
element.slick.reinit();
|
1468
|
+
}
|
1469
|
+
|
1470
|
+
});
|
1471
|
+
};
|
1472
|
+
|
1138
1473
|
$.fn.unslick = function () {
|
1139
1474
|
var _ = this;
|
1140
1475
|
return _.each(function (index, element) {
|