swiper移动端下不能正常轮播的解决方案-----此坑没躺过估计很难找到正确姿势

<script>
var mySwiper = new Swiper('.swiper-container', {
    direction: 'vertical', //horizontal横向
    loop: true,
    pagination: '.swiper-pagination', // 如果需要分页器
    // 如果需要前进后退按钮
    nextButton: '.swiper-button-next',
    prevButton: '.swiper-button-prev',
    scrollbar: '.swiper-scrollbar',// 如果需要滚动条
    //核心部分
    autoplayDisableOnInteraction : false, //滑动之后, 定时器也不会被清除
    observer: true, //修改swiper自己或子元素时,自动初始化swiper 
    observeParents: false, //修改swiper的父元素时,自动初始化swiper 
    onSlideChangeEnd: function(swiper) {      
        swiper.update();     
        swiper.startAutoplay();   
        swiper.reLoop();   
    }
})
</script>

mySwiper.reLoop(); 重新对需要循环的slide个数进行计算,当你改变了slidesPerView参数时需要用到,需要自动轮播的时候必须要加上;

swiper.update();  更新Swiper,这个方法包含了updateContainerSize,updateSlidesSize,updateProgress,updatePagination,updateClasses方法。也就是数据改变是重新初始化一次swiper;

mySwiper.startAutoplay(); 重新开始自动切换;

原文地址:https://www.cnblogs.com/lhl66/p/8074959.html