导航

萌即是正义!时不时分享一些ACG活动记录与有趣代码的小站!

让Swiper移动端超出一屏的部分滚动显示而不是触发滑到下一页

作者:广树·时间:2017-12-25 10:08:46·分类:JavaScript/jQuery/Vue

swiper版本为3.4.2。

因为效果需要,如果页面内容超过屏幕高度则先触发overflow的滚动条,当滚动条滚动到底部再触发swiper的页面滑动效果。

    var swiper = new Swiper('.swiper-container', {
        direction: 'vertical',
    });
    var startScroll, touchStart, touchCurrent;
    swiper.slides.on('touchstart', function (e) {
        startScroll = this.scrollTop;
        touchStart = e.targetTouches[0].pageY;
    }, true);
    swiper.slides.on('touchmove', function (e) {
        touchCurrent = e.targetTouches[0].pageY;
        var touchesDiff = touchCurrent - touchStart;
        var slide = this;
        var onlyScrolling =
                ( slide.scrollHeight > slide.offsetHeight ) && 
                (
                    ( touchesDiff < 0 && startScroll === 0 ) || 
                    ( touchesDiff > 0 && startScroll === ( slide.scrollHeight - slide.offsetHeight ) ) || 
                    ( startScroll > 0 && startScroll < ( slide.scrollHeight - slide.offsetHeight ) ) 
                );
        if (onlyScrolling) {
            e.stopPropagation();
        }
    }, true);
侧边栏
最新评论
广树
2024-05-08
@Asuna:谢谢!谢谢!
Asuna
2024-05-08
恭喜获得高质量博客认证~
广树
2024-05-08
@老张博客:是的,不仅仅是大城市,很多小乡村也是依靠动漫发展起来的旅游产业,所以不要小看文化产业带来的经济价值啊!
老张博客
2024-05-08
到日本 是不是大街小巷都是这些动漫呀!
广树
2024-05-08
@Chise Hachiroku:不是还有,而是最近出来的新服务🤭。送货时间太迟了,不是急需的话还是一般配送比较好。
正在攻略

圣兽之王.jpg

传颂之物

PSN奖杯卡

PSN奖杯卡

赞助商广告