How to destroy/remove/unbind a Flexslider

后端 未结 4 1080
攒了一身酷
攒了一身酷 2021-01-02 07:21

There are a few discussions on the github page regarding the destroy method, and a couple questions on stack, but there hasn\'t been a straightforward answer or solution yet

相关标签:
4条回答
  • 2021-01-02 07:31

    Have you tried detach and attach? this will keep the state and even events of anything detached.

    var flex = $('.flexslider').detach(); //detach
    $('body').append(flex); //reattach
    
    0 讨论(0)
  • 2021-01-02 07:38

    A Github user has submitted a pull request to add a destroy method for the plugin. https://github.com/woothemes/FlexSlider/pull/771

    I took this users version of the plugin with his destroy method and it works great for me. I got it from https://github.com/bradgreens/FlexSlider/tree/release-2-2-0

    0 讨论(0)
  • 2021-01-02 07:50

    The destroy method never works for me.

    The only reliable solution I've found (since the current version 2.2.2) is to completely remove the flexslider element from the DOM, then reinstate it.

    Something like:

    $('.flexslider').remove();
    // re-insert clean mark-up so flexslider can reset itself properly
    $('.flexslider-container').append('<div class="flexslider"><ul class="slides"></ul></div>');
    

    Then I reinitialise the flexslider from scratch:

    var imglist = '<li><img ...></li><li><img ...></li>...';
    $('.flexslider ul.slides').html(imglist);
    $('.flexslider').flexslider({ 
        ...
    });
    

    I also find this method is more reliable than adding and removing slides in order to get the slider to update itself.

    0 讨论(0)
  • 2021-01-02 07:50

    For me, I found this solution :

    $('.logo-carousel').flexslider({
       move : 0
    });
    
    0 讨论(0)
提交回复
热议问题