swiper-slide内部 内容过多超出屏幕滑动展示剩余内容,在pc端滚动鼠标滚轮是可以实现剩余内容的展示的。
但是在移动端,滑动swiper-slide内部的内容不会随着手指的滑动而滚动。不知道有什么办法可以解决此问题?
提供参考
移动端swiper-slide内部内容滑动的问题可以通过使用iScroll插件或者swiper的nested属性来解决。以下是两种方法的简单介绍:
<div class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div id="iscroll-wrapper">
<!-- 需要滚动的内容 -->
</div>
</div>
</div>
</div>
<script src="iscroll.js"></script>
<script>
var myScroll = new IScroll('#iscroll-wrapper', {
// iScroll 配置项
});
</script>
<div class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="swiper-container nested-swiper">
<div class="swiper-wrapper">
<!-- 内部 swiper-slide -->
</div>
</div>
</div>
</div>
</div>
<script>
var mySwiper = new Swiper('.swiper-container', {
// 外部 swiper 配置项
nested: true,
direction: 'horizontal',
// 内部 swiper 配置项
on: {
init: function () {
var nestedSwiper = this.nested;
// inner swiper 中的回调函数
}
}
})
</script>
以上两种方法可以解决移动端swiper-slide内部内容滑动的问题,具体选择哪一种方式取决于实际需要。
打开swiper的api文档,就可以找到这个属性:
其中:
observer: 监听swiper
observeParents: 监听swiper的父元素们
observeSlideChildren: 监听slide
给swiper加上对应的监听,就可以正常播放了。