forked from kenwheeler/slick
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathslick.min.js
1 lines (1 loc) · 17.2 KB
/
slick.min.js
1
function throttle(a,b,c){b||(b=250);var d,e;return function(){var f=c||this,g=+new Date,h=arguments;d&&d+b>g?(clearTimeout(e),e=setTimeout(function(){d=g,a.apply(f,h)},b)):(d=g,a.apply(f,h))}}var slick=window.slick||{},functionBinder=function(a,b){"use strict";return function(){return a.apply(b,arguments)}},mobileDetect=function(){var a=!1;return function(b){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(b)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(b.substr(0,4)))&&(a=!0)}(navigator.userAgent||navigator.vendor||window.opera),a};slick.slider=function(){"use strict";function a(a,b){this.defaults={autoplay:!1,autoplaySpeed:3e3,dots:!1,draggable:!0,arrows:!0,infinite:!0,onBeforeChange:null,onAfterChange:null,responsive:null,slide:"div",slidesToShow:1,slidesToScroll:1,speed:300,swipe:!0,touchMove:!0,touchThreshold:5},this.activeBreakpoint=null,this.animating=!1,this.animType=null,this.autoPlayTimer=null,this.breakpoints=[],this.breakpointSettings=[],this.currentSlide=0,this.currentLeft=null,this.direction=1,this.dots=null,this.listWidth=null,this.loadIndex=0,this.nextArrow=null,this.prevArrow=null,this.slideCount=null,this.slideWidth=null,this.slideTrack=null,this.slides=null,this.sliding=!1,this.slideOffset=0,this.slider=$(a),this.swipeLeft=null,this.list=null,this.touchObject={},this.transformsEnabled=!1,this.options=$.extend({},this.defaults,b),this.originalSettings=this.options;var c=this.options.responsive||null;if(c&&c.length>-1){for(var d in c)this.breakpoints.push(c[d].breakpoint),this.breakpointSettings[c[d].breakpoint]=c[d].settings;this.breakpoints.sort(function(a,b){return b-a})}this.changeSlide=functionBinder(this.changeSlide,this),this.setPosition=functionBinder(this.setPosition,this),this.swipeHandler=functionBinder(this.swipeHandler,this),this.dragHandler=functionBinder(this.dragHandler,this),this.autoPlayIterator=functionBinder(this.autoPlayIterator,this),this.init()}return a.prototype.init=function(){$(this.slider).hasClass("slick-initialized")||($(this.slider).addClass("slick-initialized"),this.buildOut(),this.setValues(),this.getAnimType(),this.setPosition(),this.startLoad(),this.loadSlider(),this.initializeEvents(),this.checkResponsive())},a.prototype.getAnimType=function(){void 0!==document.body.style.MozTransform?this.animType="MozTransform":void 0!==document.body.style.webkitTransform?this.animType="webkitTransform":void 0!==document.body.style.msTransform&&(this.animType="msTransform"),null!==this.animType&&(this.transformsEnabled=!0)},a.prototype.autoPlay=function(){this.autoPlayTimer&&clearInterval(this.autoPlayTimer),this.autoPlayTimer=setInterval(this.autoPlayIterator,this.options.autoplaySpeed)},a.prototype.autoPlayIterator=function(){this.options.infinite===!1?1===this.direction?(this.currentSlide+1===this.slideCount-1&&(this.direction=0),this.slideHandler(this.currentSlide+this.options.slidesToScroll)):(0===this.currentSlide-1&&(this.direction=1),this.slideHandler(this.currentSlide-this.options.slidesToScroll)):this.slideHandler(this.currentSlide+this.options.slidesToScroll)},a.prototype.checkResponsive=function(){if(this.originalSettings.responsive&&this.originalSettings.responsive.length>-1){var a=null;for(var b in this.breakpoints)$(window).width()<this.breakpoints[b]&&(a=this.breakpoints[b]);null!==a?null!==this.activeBreakpoint?a!==this.activeBreakpoint&&(this.activeBreakpoint=a,this.options=$.extend({},this.defaults,this.breakpointSettings[a]),this.refresh()):(this.activeBreakpoint=a,this.options=$.extend({},this.defaults,this.breakpointSettings[a]),this.refresh()):null!==this.activeBreakpoint&&(this.activeBreakpoint=null,this.options=$.extend({},this.defaults,this.originalSettings),this.refresh())}},a.prototype.startLoad=function(){this.options.arrows===!0&&(this.prevArrow.hide(),this.nextArrow.hide()),this.options.dots===!0&&this.dots.hide(),this.slider.addClass("slick-loading")},a.prototype.loadSlider=function(){var a=this;a.setPosition(),a.slideTrack.animate({opacity:1},this.options.speed,function(){a.setPosition()}),"complete"!==document.readyState?$(window).load(function(){a.options.arrows===!0&&(a.prevArrow.show(),a.nextArrow.show()),a.options.dots===!0&&a.dots.show(),a.slider.removeClass("slick-loading"),a.options.autoplay===!0&&a.autoPlay()}):(a.options.arrows===!0&&(a.prevArrow.show(),a.nextArrow.show()),a.options.dots===!0&&a.dots.show(),a.slider.removeClass("slick-loading"),a.options.autoplay===!0&&a.autoPlay())},a.prototype.setValues=function(){this.listWidth=this.list.innerWidth(),this.slideWidth=Math.ceil(this.listWidth/this.options.slidesToShow)},a.prototype.buildOut=function(){var a;if(this.slides=$(this.options.slide+":not(.cloned)",this.slider).addClass("slide"),this.slideCount=this.slides.length,0!==this.slideCount%this.options.slidesToScroll&&1!==this.options.slidesToShow){var b=Math.abs(this.options.slidesToScroll-this.slideCount%this.options.slidesToScroll);for(a=0;b>a;a++)$("<div/>").appendTo(this.slider).addClass("slide placeholder");this.slides=$(".slide:not(.cloned)",this.slider),this.slideCount=this.slides.length}if(this.slider.addClass("slick-slider"),this.slideTrack=this.slides.wrapAll('<div class="slick-track"/>').parent(),this.list=this.slideTrack.wrap('<div class="slick-list"/>').parent(),this.slideTrack.css("opacity",0),this.options.arrows===!0&&(this.prevArrow=$('<a href="javascript:void(0)">Previous</a>').appendTo(this.slider).addClass("slick-prev"),this.nextArrow=$('<a href="javascript:void(0)">Next</a>').appendTo(this.slider).addClass("slick-next"),this.options.infinite!==!0&&this.prevArrow.addClass("disabled")),this.options.dots===!0){for(this.dots=$('<ul class="slick-dots"></ul>').appendTo(this.slider),a=1;a<=this.slideCount;a+=1)$('<li><a href="javascript:void(0)">'+a+"</a></li>").appendTo(this.dots);if(this.options.slidesToScroll>1){this.dots.find("li").hide();for(var a=0;a<this.slideCount;)$(this.dots.find("li").get(a)).show(),a+=this.options.slidesToScroll}this.dots.find("li").first().addClass("active")}if(1==this.options.draggable&&this.list.addClass("draggable"),this.options.infinite===!0){var c=null;for(a=this.slideCount;a>this.slideCount-this.options.slidesToShow;a--)c=a-1,$(this.slides[c]).clone().prependTo(this.slideTrack).addClass("cloned");for(a=0;a<this.options.slidesToShow;a++)c=a,$(this.slides[c]).clone().appendTo(this.slideTrack).addClass("cloned")}},a.prototype.setDimensions=function(){this.slideWidth=Math.ceil(this.listWidth/this.options.slidesToShow),this.list.find(".slide").width(this.slideWidth),this.slideTrack.width(Math.ceil(this.slideWidth*this.slider.find(".slide").length))},a.prototype.setPosition=function(){this.setValues(),this.setDimensions(),this.options.infinite===!0&&(this.slideOffset=-1*this.slideWidth*this.options.slidesToShow);var a={},b=-1*this.currentSlide*this.slideWidth+this.slideOffset;this.transformsEnabled===!1?this.slideTrack.css("left",b):(a[this.animType]="translate("+b+"px, 0px)",this.slideTrack.css(a))},a.prototype.initializeEvents=function(){var a=this;this.options.arrows===!0&&(this.prevArrow.on("click",{message:"previous"},this.changeSlide),this.nextArrow.on("click",{message:"next"},this.changeSlide)),this.options.dots===!0&&$("li a",this.dots).on("click",{message:"index"},this.changeSlide),this.options.swipe===!0&&(this.list.on("touchstart",{action:"start"},throttle(this.swipeHandler,20)),this.list.on("touchmove",{action:"move"},throttle(this.swipeHandler,20)),this.list.on("touchend",{action:"end"},throttle(this.swipeHandler,20))),this.options.draggable===!0&&(this.list.on("mousedown",{action:"start"},this.dragHandler),this.list.on("mousemove",{action:"move"},this.dragHandler),this.list.on("mouseup",{action:"end"},this.dragHandler),this.list.on("mouseout",{action:"cancel"},this.dragHandler)),$(window).on("orientationchange",this.setPosition),$(window).on("resize",function(){a.checkResponsive(),a.setPosition()}),$(window).on("load",this.setPosition)},a.prototype.changeSlide=function(a){var b=this;switch(a.data.message){case"previous":if(0!=this.animating)return!1;b.slideHandler(b.currentSlide-b.options.slidesToScroll);break;case"next":if(0!=b.animating)return!1;b.slideHandler(b.currentSlide+b.options.slidesToScroll);break;case"index":if(0!=b.animating)return!1;b.slideHandler($(a.target).parent().index());break;default:return!1}},a.prototype.updateDots=function(){this.dots.find("li").removeClass("active"),$(this.dots.find("li").get(this.currentSlide)).addClass("active")},a.prototype.animateSlide=function(a,b){var c={},d=this;null!==this.options.onBeforeChange&&this.options.onBeforeChange.call(),this.transformsEnabled===!1?this.slideTrack.animate({left:a},d.options.speed,b):$({animStart:this.currentLeft}).animate({animStart:a},{duration:d.options.speed,step:function(a){c[d.animType]="translate("+a+"px, 0px)",d.slideTrack.css(c)},complete:function(){b&&b.call()}})},a.prototype.slideHandler=function(a){var c,d,e=null,f=this;if(c=a,e=-1*c*this.slideWidth+this.slideOffset,d=-1*this.currentSlide*this.slideWidth+this.slideOffset,f.options.autoplay===!0&&clearInterval(this.autoPlayTimer),this.currentLeft=null===this.swipeLeft?d:this.swipeLeft,0>c){if(this.options.infinite!==!0)return this.animateSlide(d),!1;this.animating=!0,this.animateSlide(e,function(){f.animating=!1,f.currentSlide=f.slideCount-f.options.slidesToScroll,f.setPosition(),null!==f.swipeLeft&&(f.swipeLeft=null),f.options.dots&&f.updateDots(),f.options.autoplay===!0&&f.autoPlay(),null!==f.options.onAfterChange&&f.options.onAfterChange.call(),f.slides.removeClass("active"),$(f.slides.get(c)).addClass("active")})}else if(c>this.slideCount-1){if(this.options.infinite!==!0)return this.animateSlide(d),!1;this.animating=!0,this.animateSlide(e,function(){f.animating=!1,f.currentSlide=0,f.setPosition(),null!==f.swipeLeft&&(f.swipeLeft=null),f.options.dots&&f.updateDots(),f.options.autoplay===!0&&f.autoPlay(),null!==f.options.onAfterChange&&f.options.onAfterChange.call(),f.slides.removeClass("active"),$(f.slides.get(c)).addClass("active")})}else this.animating=!0,this.animateSlide(e,function(){f.animating=!1,f.currentSlide=c,f.setPosition(),null!==f.swipeLeft&&(f.swipeLeft=null),f.options.dots&&f.updateDots(),f.options.autoplay===!0&&f.autoPlay(),null!==f.options.onAfterChange&&f.options.onAfterChange.call(),f.slides.removeClass("active"),$(f.slides.get(c)).addClass("active"),f.options.arrows===!0&&f.options.infinite!==!0&&(0===f.currentSlide?(f.prevArrow.addClass("disabled"),f.nextArrow.removeClass("disabled")):f.currentSlide>=f.slideCount/f.options.slidesToScroll*f.options.slidesToShow-f.options.slidesToScroll?(f.nextArrow.addClass("disabled"),f.prevArrow.removeClass("disabled")):(f.prevArrow.removeClass("disabled"),f.nextArrow.removeClass("disabled")))})},a.prototype.dragHandler=function(a){var c,b={},d=null;switch(c=-1*this.currentSlide*this.slideWidth+this.slideOffset,this.touchObject.minSwipe=this.slideWidth/this.options.touchThreshold,a.data.action){case"start":this.list.addClass("dragging"),this.touchObject.startX=a.clientX,this.touchObject.startY=a.clientY,this.touchObject.curX=a.clientX,this.touchObject.curY=a.clientY;break;case"move":this.touchObject.curX=a.clientX,this.touchObject.curY=a.clientY,this.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(this.touchObject.curX-this.touchObject.startX,2))),"up"!==this.swipeDirection()&&"down"!==this.swipeDirection()&&(a.originalEvent.preventDefault(),this.touchObject.curX>this.touchObject.startX?1==this.options.touchMove&&(d=c+this.touchObject.swipeLength,this.transformsEnabled===!1?this.slideTrack.css("left",d):(b[this.animType]="translate("+d+"px, 0px)",this.slideTrack.css(b),this.swipeLeft=d)):1==this.options.touchMove&&(d=c-this.touchObject.swipeLength,this.transformsEnabled===!1?this.slideTrack.css("left",d):(b[this.animType]="translate("+d+"px, 0px)",this.slideTrack.css(b),this.swipeLeft=d)));break;case"end":if(this.list.removeClass("dragging"),0!==this.touchObject.curX)if(this.touchObject.swipeLength>=this.touchObject.minSwipe)switch(this.swipeDirection()){case"left":this.slideHandler(this.currentSlide+this.options.slidesToScroll),this.touchObject={};break;case"right":this.slideHandler(this.currentSlide-this.options.slidesToScroll),this.touchObject={}}else this.slideHandler(this.currentSlide),this.touchObject={};else this.touchObject={};break;case"cancel":this.list.removeClass("dragging"),this.touchObject.startX&&(this.slideHandler(this.currentSlide),this.touchObject={})}},a.prototype.swipeHandler=function(a){var c,b={},d=null;switch(c=-1*this.currentSlide*this.slideWidth+this.slideOffset,this.touchObject.fingerCount=a.originalEvent.touches.length,this.touchObject.minSwipe=this.slideWidth/this.options.touchThreshold,a.data.action){case"start":1===this.touchObject.fingerCount?(this.touchObject.startX=a.originalEvent.touches[0].pageX,this.touchObject.startY=a.originalEvent.touches[0].pageY,this.touchObject.curX=a.originalEvent.touches[0].pageX,this.touchObject.curY=a.originalEvent.touches[0].pageY):this.touchObject={};break;case"move":1===a.originalEvent.touches.length?(this.touchObject.curX=a.originalEvent.touches[0].pageX,this.touchObject.curY=a.originalEvent.touches[0].pageY,this.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(this.touchObject.curX-this.touchObject.startX,2))),"up"!==this.swipeDirection()&&"down"!==this.swipeDirection()&&(a.originalEvent.preventDefault(),this.touchObject.curX>this.touchObject.startX?1==this.options.touchMove&&(d=c+this.touchObject.swipeLength,this.transformsEnabled===!1?this.slideTrack.css("left",d):(b[this.animType]="translate("+d+"px, 0px)",this.slideTrack.css(b),this.swipeLeft=d)):1==this.options.touchMove&&(d=c-this.touchObject.swipeLength,this.transformsEnabled===!1?this.slideTrack.css("left",d):(b[this.animType]="translate("+d+"px, 0px)",this.slideTrack.css(b),this.swipeLeft=d)))):this.touchObject={};break;case"end":if(0===this.touchObject.fingerCount&&0!==this.touchObject.curX)if(this.touchObject.swipeLength>=this.touchObject.minSwipe)switch(this.swipeDirection()){case"left":this.slideHandler(this.currentSlide+this.options.slidesToScroll),this.touchObject={};break;case"right":this.slideHandler(this.currentSlide-this.options.slidesToScroll),this.touchObject={}}else this.slideHandler(this.currentSlide),this.touchObject={};else this.touchObject={};break;case"cancel":}},a.prototype.swipeDirection=function(){var a,b,c,d;return a=this.touchObject.startX-this.touchObject.curX,b=this.touchObject.startY-this.touchObject.curY,c=Math.atan2(b,a),d=Math.round(180*c/Math.PI),0>d&&(d=360-Math.abs(d)),45>=d&&d>=0?"left":360>=d&&d>=315?"left":d>=135&&225>=d?"right":d>45&&135>d?"down":"up"},a.prototype.refresh=function(){this.destroy(),this.autoPlayTimer=null,this.currentSlide=0,this.currentLeft=null,this.direction=1,this.dots=null,this.listWidth=null,this.loadIndex=0,this.nextArrow=null,this.prevArrow=null,this.slideCount=null,this.slideWidth=null,this.slideTrack=null,this.slides=null,this.sliding=!1,this.slideOffset=0,this.swipeLeft=null,this.list=null,this.touchObject={},this.transformsEnabled=!1,$(this.slider).hasClass("slick-initialized")||($(this.slider).addClass("slick-initialized"),this.buildOut(),this.setValues(),this.getAnimType(),this.setPosition(),this.startLoad(),this.loadSlider(),this.initializeEvents())},a.prototype.destroy=function(){$(".cloned",this.slider).remove(),$(".placeholder",this.slider).remove(),this.dots&&this.dots.remove(),this.prevArrow&&(this.prevArrow.remove(),this.nextArrow.remove()),this.slides.unwrap().unwrap(),this.slides.removeClass("slide").width(""),this.slider.removeClass("slick-slider"),this.slider.removeClass("slick-initialized")},a}(),$.fn.slick=function(a){"use strict";return this.each(function(){this.slider=new slick.slider(this,a)})},$.fn.unslick=function(){return this.each(function(){this.slider.destroy()})};