小姨家错对门 发表于 2020-2-8 09:50:16

求助 swiper3x动态数据更新

本帖最后由 小姨家错对门 于 2020-2-8 10:23 编辑

swiper3 能在onSlideChangeEnd回调函数里添加mySwiper.startAutoplay(); 和mySwiper.reLoop(); (如下方代码所示)么?为什么一添加就不滚动了呢?swiper3能实现动态数据更新么?这个问题困扰了我很久,一直没有找到解决办法,求大神帮助,万分感谢!!

var mySwiper = new Swiper ('.swiper-container', {
    slidesPerView :'auto',
    autoplay:2000,
    loop: true,
    direction : 'vertical',
    initialSlide :0,   
    observer:true,//修改swiper自己或子元素时,自动初始化swiper   
    observeParents:true,//修改swiper的父元素时,自动初始化swiper
    onSlideChangeEnd: function(swiper){
            //alert(swiper.activeIndex);
      swiper.update();//更新Swiper,这个方法包含了updateContainerSize,updateSlidesSize,updateProgress,updatePagination,updateClasses方法。也就是数据改变是重新初始化一次swiper;
      mySwiper.startAutoplay();//重新开始自动切换;
      mySwiper.reLoop();//重新对需要循环的slide个数进行计算,当你改变了slidesPerView参数时需要用到,需要自动轮播的时候必须要加上;
    }
})
报以下错误找不到这个属性
Uncaught TypeError: Cannot read property 'startAutoplay' of undefined
    at Object.onSlideChangeEnd (index.html:145)
    at Swiper.s.emit (swiper.js:4196)
    at Swiper.s.onTransitionEnd (swiper.js:2130)
    at Swiper.s.slideTo (swiper.js:2084)
    at Swiper.s.init (swiper.js:4348)
    at new Swiper (swiper.js:4483)
    at index.html:134





admin 发表于 2020-2-9 15:31:39

mySwiper.startAutoplay();
      mySwiper.reLoop();

---------》
swiper.startAutoplay();
      swiper.reLoop();


这样试试
页: [1]
查看完整版本: 求助 swiper3x动态数据更新