lazyload.js和swiper.js冲突问题?

发布于 2022-09-12 01:40:23 字数 957 浏览 28 评论 0

版本
Swiper 4.5.3
lazyload.js 1.9.3

Swiper轮播 是x轴滚动,不知道什么什么lazyload监听了x轴,而不是正常浏览Y轴滚动,导致图片已经进入视图了还不显示,必须要接近顶部了才触发,如下图:

QQ截图20200318012818.jpg

发现一个很关键的元凶 ,就是Swiper 的列表容器 .swiper-wrapper的css使用了 display:flex;导致lazyload监听了x轴。但是这个swiper-wrapper又必须是display:flex;,把这个注释掉lazyload正常加载,但是样式已经面目全非。
当你滑动Swiper到最后一张是他就触发第二行的lazyload,

`
.swiper-wrapper {

width: 100%;
height: 100%;
z-index: 1;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-transition-property: -webkit-transform;
transition-property: -webkit-transform;
-o-transition-property: transform;
transition-property: transform;
transition-property: transform,-webkit-transform;
-webkit-box-sizing: content-box;
box-sizing: content-box;

}

`

如何让lazyload不去监听swiper-wrapper横向滚动加载呢?

苦恼了一整天了,实在是想不到什么办法,求助大佬们帮帮忙!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

笑红尘 2022-09-19 01:40:23
  1. swiper 本身就支持 lazyload,似乎没有必要多用一个 lazyload 库
  2. swiper 最新版本是 5.3.6,请尽量用新版
我的奇迹 2022-09-19 01:40:23

在 display:flex; 后面再加一个样式试试:flex-direction: row

虽然 row 是默认值,但是有时候不加就是会出问题。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文