-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjquery.easyfader.carousel.min.js
14 lines (13 loc) · 2.15 KB
/
jquery.easyfader.carousel.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/*
* EASYFADER - "CAROUSEL" EXTENSION
* Version: 1.0.2
* License: Creative Commons Attribution 3.0 Unported - CC BY 3.0
* http://creativecommons.org/licenses/by/3.0/
* This software may be used freely on commercial and non-commercial projects with attribution to the author/copyright holder.
* Author: Patrick Kunka
* Copyright 2013 Patrick Kunka, All Rights Reserved
*/
(function(g){"function"===typeof EasyFader?g.extend(EasyFader.prototype,{includeMargin:!1,carouselInit:function(){this.firstLoad=this.fadeOnLoad=!1;this.$scrollWrapper=this.$slides.parent();this.carouselBuild()},carouselSlides:function(c,d){var a=this;c=c?c:0;a.travel=c-d;c==a.totalSlides-1&&0==d?a.travel=-1:0==c&&d==a.totalSlides-1&&(a.travel=1);var e=a.$slides.eq(0).outerWidth(a.includeMargin),e=-a.travel*e,f=0<-a.travel?-a.travel:a.travel;if(0<-a.travel)for(i=0;i<f;i++){var b=a.$scrollWrapper[0],
h=b.children[0];b.insertBefore(h,b.children[a.totalActual-1])}else for(i=0;i<f;i++)b=a.$scrollWrapper[0],h=b.children[a.totalActual-2],b.insertBefore(h,b.children[0]);if(a.prefix){var g=a.getPrefixedCSS("transition","transform "+a.effectDur+"ms ease-in-out",!0),e=a.getPrefixedCSS("transform","translateX("+e+"px)");a.$scrollWrapper.css(e);setTimeout(function(){a.$scrollWrapper.css(g).bind("webkitTransitionEnd transitionend",function(b){if("transform"==b.originalEvent.propertyName||a.prefix+"transform")a.$scrollWrapper.unbind("webkitTransitionEnd transitionend"),
a.cleanUp(c,d)});var b=a.getPrefixedCSS("transform","translateX(0)");a.$scrollWrapper.css(b)},20)}else f=a.$scrollWrapper.css("left"),newLeftPos=1*f.slice(0,-2)+e,a.$scrollWrapper.css("left",newLeftPos).animate({left:f},a.effectDur,function(){a.cleanUp(c,d)})},carouselCleanUp:function(c,d){this.prefix?this.$scrollWrapper.removeStyle(this.prefix+"transition, transition, "+this.prefix+"transform, transform"):this.$scrollWrapper.removeStyle("left")},carouselBuild:function(){for(i=this.totalSlides;0<
i;i--)this.$slides.eq(i-1).clone().prependTo(this.$scrollWrapper);this.$filler=this.$slides.eq(0).clone().appendTo(this.$scrollWrapper);this.totalActual=this.$scrollWrapper.find(".slide").length}}):console.error("EasyFader core not found")})(jQuery);