jquery - iDangerous Swiper, subsequent destroy() and reInit() methods -


according directions provided answer here...

idangerous swiper plugin reset slides

i'm trying this:

http://jsfiddle.net/monastic/ydkn2/17/

<div id="slide-repo">     <div class="swiper-slide">         <img src="http://dummyimage.com/100x100/000/fff.jpg" />     </div>     ...................    </div>  <div>     <button id="update-slides">update slides</button> </div>  <div class="swiper-container">     <div class="swiper-wrapper">         <div class="swiper-slide">             <img src="http://dummyimage.com/100x100/ff0000/fff.jpg" />         </div>            .................     </div> </div>   var myswiper = new swiper('.swiper-container', {      mode: 'vertical',       loop: true,      loopadditionalslides: 5,      centeredslides: true,      slidesperview: 2,      initialslide: 0,  });  $('button#update-slides').on('click', function(){      var swiperwrapper = $('.swiper-wrapper'),         newslides = $('#slide-repo').children('.swiper-slide').clone(true);      myswiper.destroy();     swiperwrapper.empty().append(newslides);     $('.swiper-wrapper').attr('style', '');     myswiper.reinit();  }); 

but console returning 'cannot read property 'init' of null'.

any suggestions?

i believe because you're calling myswiper.destroy() , therefore can't run reinit(). documentation says reinit resetting when you've added or removed slides. here you're calling reinit on element no longer swiper.

instead, re-create swiper each time. (i'm not sure why calling removeallslides reinit not keep same settings.)

  var settings = {     mode: 'vertical',      loop: true,     loopadditionalslides: 5,     centeredslides: true,     slidesperview: 2,     initialslide: 0,   },   myswiper = new swiper('.swiper-container', settings);  $('button#update-slides').on('click', function(){      var swiperwrapper = $('.swiper-wrapper'),         newslides = $('#slide-repo').children('.swiper-slide').clone(true);      myswiper.destroy();     swiperwrapper.empty().append(newslides);     $('.swiper-wrapper').attr('style', '');     myswiper = new swiper('.swiper-container', settings);  }); 

fiddle: http://jsfiddle.net/l2hjk/2/


Comments

Popular posts from this blog

Change php variable from jquery value using ajax (same page) -

How can I fetch data from a web server in an android application? -

jquery - How can I dynamically add a browser tab? -