2015-08-19 4 views
3

Я пытаюсь включить Slick Slider (slick.js), чтобы начать только ширину более 520 пикселей. Все, что ниже этого, и слайды просто стека (то есть без пятна). Возможно ли, что он может работать без обновления страницы?Включить и отключить Slick Slider в определенных точках перерыва

Я сделал это, который работает при перетаскивании браузера (узкий) ниже 500px, но когда я перехожу его на 500px он не повторно инициировать без обновления страницы ...

$('.slick').slick({ 
    autoplay: true, 
    autoplaySpeed: 4000, 
    delay: 5000, 
    speed: 700, 
    responsive: [ 
     { 
      breakpoint: 500, 
      settings: "unslick" 
     } 
    ] 
}); 

Есть ли способ обойти это?

Я использую https://github.com/kenwheeler/slick

ответ

7

Вы можете попытаться восстановить его, когда при изменении размера окна выше 500. Это, кажется, работает в моем демо.

JSFiddle Demo

function slickify(){ 
    $('.slick').slick({ 
     autoplay: true, 
     autoplaySpeed: 4000, 
     delay: 5000, 
     speed: 700, 
     responsive: [ 
      { 
       breakpoint: 500, 
       settings: "unslick" 
      } 
     ] 
    }); 
} 

slickify(); 
$(window).resize(function(){ 
    var $windowWidth = $(window).width(); 
    if ($windowWidth > 500) { 
     slickify(); 
    } 
}); 
+0

Спасибо за обратную связь - я могу видеть это прекрасно работает на вашем, но по моему теперь останавливает его от выключения или, причудливо - мне нужно исследовать дальше ... –

+0

Хорошо удачи! Дайте мне знать, как это происходит. Помните, я поместил init в функцию, поэтому убедитесь, что вы вызываете функцию на загрузке страницы. –

+0

Вы должны только вызвать slick() один раз, например здесь: https://github.com/kenwheeler/slick/issues/542#issuecomment-168658956, обратите внимание на пользовательскую логику, основанную на классе [.slick-initialized]. – androidu

Смежные вопросы