swiper在动态绑定数据之后,不能滑动。

查看数: 8053 | 评论数: 15 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2017-12-27 10:01

正文摘要:

在我添加observer参数之后可以滑动,但是还存在bug:添加loop参数之后, 每次滑动到最后一张时, 再次滑动不能滑动到第一张而是到第二张。 有点乱,不知道能不能明白。。。。。 ...

回复

IT大汉 发表于 2017-12-28 23:26:53
我用的是swiper4,最新的,我的没问题的。第一,各个需要的JS加载路径检查下;第二,加载JS和数据显示先后顺序检查下,加载JS放数据显示之后执行;第三,(observer:true,//当改变swiper的样式(例如隐藏/显示)或者修改swiper的子元素时,自动初始化swiper。)这个要加;第四,你的.swiper-container要加个宽和高。这些都做到了,就没问题了。
493356884 发表于 2018-6-8 10:56:46
不用loop就好了,楼上大哥说的对
493356884 发表于 2018-6-8 10:53:53
不用loop就好了
a814274811 发表于 2018-5-11 14:31:04
路过看看
whws 发表于 2018-3-26 20:51:46
我今天也遇到了,用的 vue swiper,请问你解决了没有啊?
chinese_yu 发表于 2018-1-2 09:51:34
IT大汉 发表于 2017-12-28 23:26
我用的是swiper4,最新的,我的没问题的。第一,各个需要的JS加载路径检查下;第二,加载JS和数据显示先后 ...

嗯嗯,是数据加载和js执行顺序的问题,在chrome上打断点查出来的,
chinese_yu 发表于 2018-1-2 09:50:26
本帖最后由 chinese_yu 于 2018-1-2 10:04 编辑
muzi 发表于 2017-12-27 18:08
我也遇到这个问题了,急求啊啊啊。网上都没看到解决方法

解决了,
var timerOut, swiper;
        timerOutFun();
        function timerOutFun() {
          timerOut = setTimeout(function () {
            if (self.ProductVo) {
              swiper = new Swiper('.swiper-container', {
                loop: true,
                autoplay: 3000,
                pagination: {
                  el: '.swiper-pagination',
                }
              });
              clearTimeout(timerOut);
            } else {
              timerOutFun()
            }
          }, 10)
        }


很暴力的方法,
2495152029 发表于 2017-12-28 18:01:23
写法问题,调用位置也不对,observer和update重复了。楼主说的问题没把代码粘出来。
fusubujian 发表于 2017-12-28 14:12:10
可以尝试检测当前Index,如果到最后一张,手动调回第一张,重新开始滚动

Archiver|手机版|小黑屋|Swiper中文网 ( 粤ICP备15001020号

GMT+8, 2024-5-21 11:22 , Processed in 0.100519 second(s), 32 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表