2016-06-07 4 views
1

Таким образом, это код я использую для слайдера:Остановить автозапуск после нажатия на точки в slick.js

$('.autoplay').slick({ 
    slidesToShow: 3, 
    slidesToScroll: 1, 
    autoplay: true, 
    autoplaySpeed: 2000, 
    dots: true 
}); 

И я хочу, чтобы после того, как пользователь нажмет на любой точке, она будет отключить автозапуск. Тогда я пробовал это:

$('.autoplay').on('init', function() { 
    $('.slick-dots').click(function() { 
     $('.autoplay').slick('autoplay', false); 
    }); 
}); 

Но никакой помощи. Вот DEMO от jsFiddle. Возможно ли это с slick.js?

ответ

3

Попробуйте

$('.autoplay').slick({ 
    slidesToShow: 3, 
    slidesToScroll: 1, 
    autoplay: true, 
    autoplaySpeed: 1000, 
    dots: true 
}); 

$('.slick-dots').on('click', function() { 
    $('.autoplay').slick('slickPause'); 
}); 
+0

Ад да :) Спасибо, это все. – debute

2

От одного из вопросов в github-forum, я увидел, что вы должны приложить init событие перед инициализацией с slick.

$('.autoplay').on('init', function(slick) { 
    $('.slick-dots').on('click',function() { 
     $('.autoplay').slick('slickPause'); 
    }); 
}).slick({ 
    slidesToShow: 3, 
    slidesToScroll: 1, 
    dots: true, 
    autoplay: true, 
    autoplaySpeed: 2000, 
}) 

DEMO HERE