Vue2.0-mint-ui解决移动端苹果手机有滚动穿透的问题

本文介绍了在Vue2.0项目中使用mint-ui时遇到的苹果手机滚动穿透问题,该问题表现为弹窗选择时底部页面出现滚动效果。问题源于滚动穿透现象,解决方案是通过弹出层打开时禁止body的滑动事件,关闭时恢复。文中提供了具体的Vue2.0代码实现,包括在data中定义方法以及在弹出层打开和关闭时调用相应的方法来处理popup和datetime-picker的滚动事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.遇到的问题:使用mint-ui的弹窗选择时底部页面会出现滚动效果(仅出现在苹果手机,安卓手机,pc端正常)

2.问题原因:滚动穿透,这是啥,我也不懂

3.解决方式:参考文档,了解下:https://blog.csdn.net/weixin_40126227/article/details/80858990

思路就是弹出层打开的时候禁止body的滑动事件,弹出层关闭恢复body的滑动事件

由于使用的是Vue2.0,所以修改了语法,详见代码

首先,在data内定义一个函数和定义添加touchmove监听和移除的方法

//Vue数据变量区域
data(){
/*---------监听函数--------------*/
    handler:function(e){e.preventDefault();},
...
},
//Vue函数方法区域
methods:{
    /*解决iphone页面层级相互影响滑动的问题*/
    closeTouch:function(){
        document.getElementsByTagName("body")[0].addEventListener('touchmove',
            this.handler,{passive:false});//阻止默认事件
        console.log("closeTouch haved happened.");
    },
    openTouch:function(){
        document.getElementsByTagName("body")[0].removeE
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值