Question

I want to loop slides specific number of times and stop on the last slide.

Please help.

$(document).ready(function() {
    $('.flexslider').flexslider({slideshowSpeed: 5000});
});
Was it helpful?

Solution

Using the callback features you could do something like this.

First set a variable to the number of loops you want:

var n = 4

then when you initialise the slider add this option:

after: function(slider) {
   if (slider.currentSlide == slider.count - 1) { // is last slide
      n--;
      if(n==0) {
        slider.pause();
      }
   }
}

I had hoped to use the end: function(){} feature but this only fires when the animation is disabled. There is a slight annoyance here as the var n will continue to decrement if the users cycle manually. Not too troublesome though I hope.

A nice bonus here is that you can resume the slideshow if you want. Check out the advanced docs for more.

Hope that helps!

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top