我尝试了哪些方案:
1、弹框出来的时候设置
$('body').css({ 'overflow':'hidden'})
弹框关闭的时候设置 :
$('body').css({ 'overflow':''})
在手机真机上,手机滑动往下的过程中,手机屏幕变大, 这个设置就会失效。Pass
2、我没还测试,容我测试一下。没有问题了我来回复。
这个方案暂时没有发现问题,
发现问题了。 2023/06/09 📝
在实践的过程中遇到的问题:要小心stopScroll不能调用2次,调用2次,滚动条的位置就会为0
stopScroll () { // 展示弹窗时,阻止背景滚动
let top =document.body.scrollTop || document.documentElement.scrollTop;
$('body').css({
"position":"fixed",
"top":`${-1 * top}px`,
"width":"100%"
})
},
recoverScroll () { //隐藏弹窗时,恢复背景的滚动
let top = -parseInt(document.body.style.top);
$('body').css({
"position":"static",
"top":'0'
})
window.scrollTo(0,top);
},