ios H5 弹出后 禁止父元素滚动条 js代码

12 篇文章 0 订阅
12 篇文章 0 订阅

第一步 在要禁用的元素里增加一个占满页面的div 或者直接 修改这个元素的类名为 end_overflow  例如

<div class="end_overflow" style="
		position: absolute;
		width: calc(100vw);
		top:0;
		left: 0;
		height: calc(100vh + 1px);
		z-index: -1;">
    内容呢热闹禸

</div>

 

 第二步 执行JS 即可

 

 

	//阻止页面滚动条事件 搜索父 class类为end_overflow
	document.body.addEventListener("touchmove",function(ev){
		var bz=false,ls =ev.target;
		if(ls.className.indexOf('end_overflow')>-1){
			ev.preventDefault();
			return false;
		}
		ls=ls.parentNode;
		while(ls!==document.body){
			if(ls.className.indexOf('end_overflow')>-1){
				bz = true;
			}
			ls=ls.parentNode;
		}
		if(bz){
			document.body.parentNode.style.overflowY = "hidden";
			setTimeout(function(){
				document.body.parentNode.style.overflowY = "auto";
			},100)
		}else{
			document.body.parentNode.style.overflowY = "auto";
		}
	},{ passive: false });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值