forked from Codeinwp/Nivo-Slider-jQuery
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjquery.nivo.slider.min.js
13 lines (13 loc) · 12.1 KB
/
jquery.nivo.slider.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
/* @preserve
*
* jQuery Nivo Slider v3.3.1
* https://github.com/fpvcode/nivo-slider-jquery
*
* jQuery Nivo Slider v3.2
* http://nivo.dev7studios.com
*
* Copyright 2012, Dev7studios
* Free to use and abuse under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*/
(function(t){var i=function(i,e){var n=t.extend({},t.fn.nivoSlider.defaults,e),a={currentSlide:0,currentImage:"",totalSlides:0,running:!1,paused:!1,stop:!1,controlNavEl:!1},o=function(t){return t.data("src")||t.attr("src")},r=function(i){return t(c[i]).is("img")?t(c[i]):t(c[i]).find("img:first")},s=t(i);s.data("nivo:vars",a).addClass("nivoSlider");var c=s.children();c.each(function(){var i=t(this),e="";i.is("img")||(i.is("a")&&(i.addClass("nivo-imageLink"),e=i),i=i.find("img:first"));var n=0===n?i.attr("width"):i.width(),o=0===o?i.attr("height"):i.height();""!==e&&e.css("display","none"),i.css("display","none"),a.totalSlides++}),n.randomStart&&(n.startSlide=Math.floor(Math.random()*a.totalSlides)),n.startSlide>0&&(n.startSlide>=a.totalSlides&&(n.startSlide=a.totalSlides-1),a.currentSlide=n.startSlide),t(c[a.currentSlide]).is("img")?a.currentImage=t(c[a.currentSlide]):a.currentImage=t(c[a.currentSlide]).find("img:first"),t(c[a.currentSlide]).is("a")&&t(c[a.currentSlide]).css("display","block");var l=t("<img/>").addClass("nivo-main-image");l.attr({src:o(a.currentImage),alt:a.currentImage.attr("alt")}).show(),s.append(l),t(window).resize(function(){s.children("img").width(s.width()),l.attr({src:o(a.currentImage),alt:a.currentImage.attr("alt")}),l.stop().height("auto"),t(".nivo-slice").remove(),t(".nivo-box").remove()}),s.append(t('<div class="nivo-caption"></div>'));var d=function(i){var e=t(".nivo-caption",s);if(""!=a.currentImage.attr("title")&&null!=a.currentImage.attr("title")){var n=a.currentImage.attr("title");"#"==n.substr(0,1)&&(n=t(n).html()),"block"==e.css("display")?setTimeout(function(){e.html(n)},i.animSpeed):(e.html(n),e.stop().fadeIn(i.animSpeed))}else e.stop().fadeOut(i.animSpeed)};d(n);var v=0;if(!n.manualAdvance&&c.length>1&&(v=setInterval(function(){if(a.currentSlide==a.totalSlides-1)var t=r(0);else t=r(a.currentSlide+1);t.attr("src",o(t)),f(s,c,n,!1)},n.pauseTime)),n.directionNav&&(s.append('<div class="nivo-directionNav"><a class="nivo-prevNav">'+n.prevText+'</a><a class="nivo-nextNav">'+n.nextText+"</a></div>"),t(s).on("click","a.nivo-prevNav",function(){if(a.running)return!1;clearInterval(v),v="",a.currentSlide-=2,f(s,c,n,"prev")}),t(s).on("click","a.nivo-nextNav",function(){if(a.running)return!1;clearInterval(v),v="",f(s,c,n,"next")})),n.controlNav){a.controlNavEl=t('<div class="nivo-controlNav"></div>'),s.after(a.controlNavEl);for(var m=0;m<c.length;m++)if(n.controlNavThumbs){a.controlNavEl.addClass("nivo-thumbs-enabled");var u=c.eq(m);u.is("img")||(u=u.find("img:first")),u.attr("data-thumb")&&a.controlNavEl.append('<a class="nivo-control" rel="'+m+'"><img src="'+u.attr("data-thumb")+'" alt="" /></a>')}else a.controlNavEl.append('<a class="nivo-control" rel="'+m+'">'+(m+1)+"</a>");t("a:eq("+a.currentSlide+")",a.controlNavEl).addClass("active"),t("a",a.controlNavEl).bind("click",function(){return!a.running&&(!t(this).hasClass("active")&&(clearInterval(v),v="",l.attr({src:o(a.currentImage),alt:a.currentImage.attr("alt")}),a.currentSlide=t(this).attr("rel")-1,void f(s,c,n,"control")))})}n.pauseOnHover&&s.hover(function(){a.paused=!0,clearInterval(v),v=""},function(){a.paused=!1,""!==v||n.manualAdvance||(v=setInterval(function(){f(s,c,n,!1)},n.pauseTime))}),s.bind("nivo:animFinished",function(){l.attr({src:o(a.currentImage),alt:a.currentImage.attr("alt")}),a.running=!1,t(c).each(function(){t(this).is("a")&&t(this).css("display","none")}),t(c[a.currentSlide]).is("a")&&t(c[a.currentSlide]).css("display","block"),""!==v||a.paused||n.manualAdvance||(v=setInterval(function(){f(s,c,n,!1)},n.pauseTime)),n.afterChange.call(this)});var h=function(i,e,n){t(n.currentImage).parent().is("a")&&t(n.currentImage).parent().css("display","block"),t('img[src="'+o(n.currentImage)+'"]',i).not(".nivo-main-image,.nivo-control img").width(i.width()).css("visibility","hidden").show();for(var a=t('img[src="'+o(n.currentImage)+'"]',i).not(".nivo-main-image,.nivo-control img").parent().is("a")?t('img[src="'+o(n.currentImage)+'"]',i).not(".nivo-main-image,.nivo-control img").parent().height():t('img[src="'+o(n.currentImage)+'"]',i).not(".nivo-main-image,.nivo-control img").height(),r=0;r<e.slices;r++){var s=Math.round(i.width()/e.slices);r===e.slices-1?i.append(t('<div class="nivo-slice" name="'+r+'"><img src="'+o(n.currentImage)+'" style="position:absolute; width:'+i.width()+"px; height:auto; display:block !important; top:0; left:-"+(s+r*s-s)+'px;" alt="'+n.currentImage.attr("alt")+'" /></div>').css({left:s*r+"px",width:i.width()-s*r+"px",height:a+"px",opacity:"0",overflow:"hidden"})):i.append(t('<div class="nivo-slice" name="'+r+'"><img src="'+o(n.currentImage)+'" style="position:absolute; width:'+i.width()+"px; height:auto; display:block !important; top:0; left:-"+(s+r*s-s)+'px;" alt="'+n.currentImage.attr("alt")+'" /></div>').css({left:s*r+"px",width:s+"px",height:a+"px",opacity:"0",overflow:"hidden"}))}t(".nivo-slice",i).height(a),l.stop().animate({height:t(n.currentImage).height()},e.animSpeed)},p=function(i,e,n){t(n.currentImage).parent().is("a")&&t(n.currentImage).parent().css("display","block"),t('img[src="'+o(n.currentImage)+'"]',i).not(".nivo-main-image,.nivo-control img").width(i.width()).css("visibility","hidden").show();for(var a=Math.round(i.width()/e.boxCols),r=Math.round(t('img[src="'+o(n.currentImage)+'"]',i).not(".nivo-main-image,.nivo-control img").height()/e.boxRows),s=0;s<e.boxRows;s++)for(var c=0;c<e.boxCols;c++)c===e.boxCols-1?(i.append(t('<div class="nivo-box" name="'+c+'" rel="'+s+'"><img src="'+o(n.currentImage)+'" style="position:absolute; width:'+i.width()+"px; height:auto; display:block; top:-"+r*s+"px; left:-"+a*c+'px;" alt="'+n.currentImage.attr("alt")+'" /></div>').css({opacity:0,left:a*c+"px",top:r*s+"px",width:i.width()-a*c+"px"})),t('.nivo-box[name="'+c+'"]',i).height(t('.nivo-box[name="'+c+'"] img',i).height()+"px")):(i.append(t('<div class="nivo-box" name="'+c+'" rel="'+s+'"><img src="'+o(n.currentImage)+'" style="position:absolute; width:'+i.width()+"px; height:auto; display:block; top:-"+r*s+"px; left:-"+a*c+'px;" alt="'+n.currentImage.attr("alt")+'" /></div>').css({opacity:0,left:a*c+"px",top:r*s+"px",width:a+"px"})),t('.nivo-box[name="'+c+'"]',i).height(t('.nivo-box[name="'+c+'"] img',i).height()+"px"));l.stop().animate({height:t(n.currentImage).height()},e.animSpeed)},f=function(i,e,n,a){var r=i.data("nivo:vars");if(r&&r.currentSlide===r.totalSlides-1&&n.lastSlide.call(this),(!r||r.stop)&&!a)return!1;n.beforeChange.call(this),a?("prev"===a&&l.prop({src:o(r.currentImage),alt:r.currentImage.attr("alt")}),"next"===a&&l.prop({src:o(r.currentImage),alt:r.currentImage.attr("alt")})):l.prop({src:o(r.currentImage),alt:r.currentImage.attr("alt")}),r.currentSlide++,r.currentSlide===r.totalSlides&&(r.currentSlide=0,n.slideshowEnd.call(this)),r.currentSlide<0&&(r.currentSlide=r.totalSlides-1),t(e[r.currentSlide]).is("img")?r.currentImage=t(e[r.currentSlide]):r.currentImage=t(e[r.currentSlide]).find("img:first"),n.controlNav&&(t("a",r.controlNavEl).removeClass("active"),t("a:eq("+r.currentSlide+")",r.controlNavEl).addClass("active")),d(n),t(".nivo-slice",i).remove(),t(".nivo-box",i).remove();var s=n.effect,c="";"random"===n.effect&&(c=new Array("sliceDownRight","sliceDownLeft","sliceUpRight","sliceUpLeft","sliceUpDown","sliceUpDownLeft","fold","fade","boxRandom","boxRain","boxRainReverse","boxRainGrow","boxRainGrowReverse"),s=c[Math.floor(Math.random()*(c.length+1))],void 0===s&&(s="fade")),-1!==n.effect.indexOf(",")&&(c=n.effect.split(","),s=c[Math.floor(Math.random()*c.length)],void 0===s&&(s="fade")),r.currentImage.attr("data-transition")&&(s=r.currentImage.attr("data-transition")),r.running=!0;var v=0,m=0,u="",f="",x="",w="";if("sliceDown"===s||"sliceDownRight"===s||"sliceDownLeft"===s)h(i,n,r),v=0,m=0,u=t(".nivo-slice",i),"sliceDownLeft"===s&&(u=t(".nivo-slice",i)._reverse()),u.each(function(){var e=t(this);e.css({top:"0px"}),m===n.slices-1?setTimeout(function(){e.animate({opacity:"1.0"},n.animSpeed,"",function(){i.trigger("nivo:animFinished")})},100+v):setTimeout(function(){e.animate({opacity:"1.0"},n.animSpeed)},100+v),v+=50,m++});else if("sliceUp"===s||"sliceUpRight"===s||"sliceUpLeft"===s)h(i,n,r),v=0,m=0,u=t(".nivo-slice",i),"sliceUpLeft"===s&&(u=t(".nivo-slice",i)._reverse()),u.each(function(){var e=t(this);e.css({bottom:"0px"}),m===n.slices-1?setTimeout(function(){e.animate({opacity:"1.0"},n.animSpeed,"",function(){i.trigger("nivo:animFinished")})},100+v):setTimeout(function(){e.animate({opacity:"1.0"},n.animSpeed)},100+v),v+=50,m++});else if("sliceUpDown"===s||"sliceUpDownRight"===s||"sliceUpDownLeft"===s){h(i,n,r),v=0,m=0;var S=0;u=t(".nivo-slice",i),"sliceUpDownLeft"===s&&(u=t(".nivo-slice",i)._reverse()),u.each(function(){var e=t(this);0===m?(e.css("top","0px"),m++):(e.css("bottom","0px"),m=0),S===n.slices-1?setTimeout(function(){e.animate({opacity:"1.0"},n.animSpeed,"",function(){i.trigger("nivo:animFinished")})},100+v):setTimeout(function(){e.animate({opacity:"1.0"},n.animSpeed)},100+v),v+=50,S++})}else if("fold"===s)h(i,n,r),v=0,m=0,t(".nivo-slice",i).each(function(){var e=t(this),a=e.width();e.css({top:"0px",width:"0px"}),m===n.slices-1?setTimeout(function(){e.animate({width:a,opacity:"1.0"},n.animSpeed,"",function(){i.trigger("nivo:animFinished")})},100+v):setTimeout(function(){e.animate({width:a,opacity:"1.0"},n.animSpeed)},100+v),v+=50,m++});else if("fade"===s)h(i,n,r),f=t(".nivo-slice:first",i),f.css({width:i.width()+"px"}),f.animate({opacity:"1.0"},2*n.animSpeed,"",function(){i.trigger("nivo:animFinished")});else if("slideInRight"===s)h(i,n,r),f=t(".nivo-slice:first",i),f.css({width:"0px",opacity:"1"}),f.animate({width:i.width()+"px"},2*n.animSpeed,"",function(){i.trigger("nivo:animFinished")});else if("slideInLeft"===s)h(i,n,r),f=t(".nivo-slice:first",i),f.css({width:"0px",opacity:"1",left:"",right:"0px"}),f.animate({width:i.width()+"px"},2*n.animSpeed,"",function(){f.css({left:"0px",right:""}),i.trigger("nivo:animFinished")});else if("boxRandom"===s)p(i,n,r),x=n.boxCols*n.boxRows,m=0,v=0,w=g(t(".nivo-box",i)),w.each(function(){var e=t(this);m===x-1?setTimeout(function(){e.animate({opacity:"1"},n.animSpeed,"",function(){i.trigger("nivo:animFinished")})},100+v):setTimeout(function(){e.animate({opacity:"1"},n.animSpeed)},100+v),v+=20,m++});else if("boxRain"===s||"boxRainReverse"===s||"boxRainGrow"===s||"boxRainGrowReverse"===s){p(i,n,r),x=n.boxCols*n.boxRows,m=0,v=0;var b=0,I=0,y=[];y[b]=[],w=t(".nivo-box",i),"boxRainReverse"!==s&&"boxRainGrowReverse"!==s||(w=t(".nivo-box",i)._reverse()),w.each(function(){y[b][I]=t(this),I++,I===n.boxCols&&(b++,I=0,y[b]=[])});for(var R=0;R<2*n.boxCols;R++){for(var N=R,T=0;T<n.boxRows;T++)N>=0&&N<n.boxCols&&(function(e,a,o,r,c){var l=t(y[e][a]),d=l.width(),v=l.height();"boxRainGrow"!==s&&"boxRainGrowReverse"!==s||l.width(0).height(0),r===c-1?setTimeout(function(){l.animate({opacity:"1",width:d,height:v},n.animSpeed/1.3,"",function(){i.trigger("nivo:animFinished")})},100+o):setTimeout(function(){l.animate({opacity:"1",width:d,height:v},n.animSpeed/1.3)},100+o)}(T,N,v,m,x),m++),N--;v+=100}}},g=function(t){for(var i,e,n=t.length;n;i=parseInt(Math.random()*n,10),e=t[--n],t[n]=t[i],t[i]=e);return t},x=function(t){this.console&&void 0!==console.log&&console.log(t)};return this.stop=function(){t(i).data("nivo:vars").stop||(t(i).data("nivo:vars").stop=!0,x("Stop Slider"))},this.start=function(){t(i).data("nivo:vars").stop&&(t(i).data("nivo:vars").stop=!1,x("Start Slider"))},n.afterLoad.call(this),this};t.fn.nivoSlider=function(e){return this.each(function(n,a){var o=t(this);if(o.data("nivoslider"))return o.data("nivoslider");var r=new i(this,e);o.data("nivoslider",r)})},t.fn.nivoSlider.defaults={effect:"random",slices:15,boxCols:8,boxRows:4,animSpeed:500,pauseTime:3e3,startSlide:0,directionNav:!0,controlNav:!0,controlNavThumbs:!1,pauseOnHover:!0,manualAdvance:!1,prevText:"Prev",nextText:"Next",randomStart:!1,beforeChange:function(){},afterChange:function(){},slideshowEnd:function(){},lastSlide:function(){},afterLoad:function(){}},t.fn._reverse=[].reverse})(jQuery);