2016-11-30 3 views
2

Мне было интересно, можно ли создать слайд слайдера Unslider, где длина паузы отличается для определенных слайдов? Например, я хочу, чтобы слайд 1 отображался в течение 5 секунд и слайд 2 отображался в течение 10 секунд. Спасибо!Unslider установить разную длину паузы для каждого слайда

ответ

1

Unslider не имеет встроенных функций, поэтому мы должны сделать это самостоятельно, используя методы Unslider и некоторые jQuery. Вот что я придумал, когда столкнулся с той же проблемой.

Опция «Автозапуск» должна быть ложной (настройка по умолчанию) для этой работы:

// Initialize Unslider 
var slider = jQuery('#unslider').unslider(); 

// Array of the times you want for each slide. 
var slideTimes = [5000,10000]; 

// Move the slider to the next slide and start the timer 
function timeToNextSlide(ms){ 
    slideTimeout = setTimeout(function(){ 
    slider.data('unslider')['next'](); 
    }, ms); 
} 

// Every time the slide changes 
slider.on('unslider.change', function(event, index, slide) { 

    // Clear the timeout in case user clicks the navigation 
    clearTimeout(slideTimeout); 

    // Reset the timeout to the next slide's time 
    timeToNextSlide(slideTimes[index]); 

}); 

// Start the slider 
timeToNextSlide(slideTimes[0]); 
Смежные вопросы