Reinitialize Slick js after successful ajax call

前端 未结 11 1758
傲寒
傲寒 2021-02-01 16:52

I am using Slick for a carousel implementation and everything works fine when the pages loads.What I am trying to achieve is that when i make an Ajax call to retrieve new data I

11条回答
  •  轮回少年
    2021-02-01 17:12

    The best way is you should destroy the slick slider after reinitializing it.

    function slickCarousel() {
      $('.skills_section').slick({
        infinite: true,
        slidesToShow: 3,
        slidesToScroll: 1
      });
    }
    function destroyCarousel() {
      if ($('.skills_section').hasClass('slick-initialized')) {
        $('.skills_section').slick('destroy');
      }      
    }
    
    $.ajax({
      type: 'get',
      url: '/public/index',
      dataType: 'script',
      data: data_send,
      success: function() {
        destroyCarousel()
        slickCarousel();
      }
    });
    

提交回复
热议问题