阻止移动端弹出层的滚动事件传递给底层的简单方法

在PC浏览器上,弹出层出现了后,要阻止滚动传递给底层的,只需要将body的Style设置: 

height: 100%;

overflow: hidden;

就能实现,可是移动端浏览器无论是Android还是iOS都无法阻止body滚动,怎么办呢?

其实只要将body的style加多一个属性:position:  fixed; 就OK啦!

JS实现:

function showLeftBar() {

if(leftBar.hidden) {//显示leftBar

leftBar.hidden=false;

body.style.overflow="hidden";

body.style.position="fixed";

}else{//隐藏leftBar

leftBar.hidden=true;

body.style.overflow="auto";

body.style.position="";

}

}

你可能感兴趣的:(阻止移动端弹出层的滚动事件传递给底层的简单方法)