2 $('.slideshow').each(function(){
3 var $container = $(this),
4 $slideGroup = $container.find('.slideshow-slides'),
5 $slides = $slideGroup.find('.slide'),
6 $nav = $container.find('.slideshow-nav'),
7 $indicator = $container.find('.slideshow-indicator'),
9 slideCount = $slides.length,
13 easing = 'easeInOutExpo',
18 $slides.each(function(i){
19 $(this).css({left:100*i+'%'});
20 indicatorHTML += '<a href="#">'+(i+1)+'</a>';
23 $indicator.html(indicatorHTML);
26 function goToSlide(index){
27 $slideGroup.animate({left:-100*index+'%'},duration,easing);
33 var $navPrev = $nav.find('.prev'),
34 $navNext = $nav.find('.next');
35 if (currentIndex === 0){
36 $navPrev.addClass('disabled');
38 $navPrev.removeClass('disabled');
40 if (currentIndex === slideCount-1){
41 $navNext.addClass('disabled');
43 $navNext.removeClass('disabled');
45 $indicator.find('a').removeClass('active')
46 .eq(currentIndex).addClass('active');
49 function startTimer(){
50 timer = setInterval(function(){
51 var nextIndex = (currentIndex+1) % slideCount;
62 $nav.on('click','a',function(event){
63 event.preventDefault();
64 if ($(this).hasClass('prev')){
65 goToSlide(currentIndex-1);
67 goToSlide(currentIndex+1);
71 $indicator.on('click','a',function(event){
72 event.preventDefault();
73 if (!$(this).hasClass('active')){
74 goToSlide($(this).index());
80 goToSlide(currentIndex);