解决小程序的遮罩层滚动穿透

遮罩层滚动穿透分为两种情况:

1.如果弹出层没有滚动事件,就直接在蒙板上加catchtouchmove="preventTouchMove" preventTouchMove:function(){};
示例代码:


    我是遮罩层

2.如果弹出层有滚动事件,那么在弹出层出现的时候给底部的containerView加上一个class 消失的时候移除。

示例代码:


    我是遮罩层



    我是页面内容


Page{
    ...
    showMask(e){
        //显示遮罩
        this.setData({
            hasMask:true
        })
    },
    hideMask(e){
    //隐藏遮罩
        this.setData({
            hasMask:false
        })
    },
}

.preventTouchMove{
    top: 0px ; 
    left:   0px ; 
    width:   100% ; 
    height:   100% ; 
    overflow:   hidden ; 
    position:   fixed ; 
    z-index:   0 ; 
}
  • 移动web端滚动遮罩层滚动穿透问题的解决方法

你可能感兴趣的:(解决小程序的遮罩层滚动穿透)