其他分享
首页 > 其他分享> > 移动端弹出遮罩层后 禁止页面滚动

移动端弹出遮罩层后 禁止页面滚动

作者:互联网

在开发移动web的时候,相信大家都会遇到当有 fixed定位遮罩层弹出时,在屏幕上滑动能够滑动背景下面的内容,这在大部分场景下都不是和友好的,解决方法如下:
在这里插入图片描述

  1. CSS overflow:hidden
    一般这种情况如果需要阻止滚动嘴简单的方法就是弹层弹出后,给body设置样式 overflow:hidden;在弹层隐藏的同时去掉加上的css, 不过这种并不适用与body的高度刚好是页面的高度,实际下层穿透滚动的元素是在body中的其他元素。 不能完全禁止,还是会有元素可以滚动。
body{
  overflow:hidden
}
  1. JS preventDefault
    监听touchmove事件并阻止默认事件
document.getElementById('mask').addEventListener('touchmove', function (event) { 
       event.preventDefault(); 
}) 

标签:body,遮罩,滚动,层后,弹层,端弹,overflow,hidden
来源: https://blog.csdn.net/weixin_42208160/article/details/111911004