解决移动端弹窗遮罩内容滚动导致底层body滑动

  一开始就想到是事件冒泡--->移动前端阻止触摸滑动事件冒泡

百度了一下,纠结半天

1.阻止网页内部滚动条mousewheel事件冒泡  (pass)

这个只能隔离鼠标滚动事件,在手机上不管用。。。

2.移动端的touch事件处理(pass)

http://www.tuicool.com/articles/uyE3Ar

这个比较复杂,整了半天没搞定,相信大神是可以搞定的,比较着急就没有继续深入研究

3.隐藏掉body多余的部分(搞定)

 

<script type="text/javascript">
 var scrollTop = $(document.body).scrollTop();//body设置为fixed之后会飘到顶部,所以要动态计算当前用户所在高度
 //禁止滚动条
 $(document.body).css({
  "overflow-y":"hidden",
  'position': 'fixed',
  'top': scrollTop*-1

});
//启用滚动条
 $(document.body).css({
  "overflow-y":"auto",
  'position': 'static',
  'top': 'auto'
 });
  
</script> 

 

 

 

虽然生活不能老想着走捷径,但这个捷径还是让我窃喜良久,哈哈

感谢Html body的滚动条禁止与启用

http://zhidao.baidu.com/link?url=wZo95H-g4ZOqvCrnLC5Chqc94uStalxpxrtcf4AHX37AYHdxtIXXoKWfNA76BvBjoN_K-HOpWAN4pxQMSddGDj1tWVjqinV6QRTcxa52ezW

 

转载于:https://www.cnblogs.com/changlun/p/5287992.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值