修复真机撑屏:锁滚动只改 overflowY——整个 overflow 改 hidden 会覆盖样式表的 overflow-x: clip,横向从裁剪变可滚动容器,整页能被拖宽
This commit is contained in:
@@ -18,21 +18,21 @@ watch(
|
||||
(v) => {
|
||||
if (v) {
|
||||
window.addEventListener('keydown', onKey)
|
||||
prevOverflow = document.body.style.overflow
|
||||
document.body.style.overflow = 'hidden'
|
||||
// 吸顶栏带 backdrop-filter,真机上其合成层会盖在遮罩之上
|
||||
// (遮罩明明 z-index 更高也拦不住)——索性开预览时整个藏掉
|
||||
prevOverflow = document.body.style.overflowY
|
||||
// 只锁纵向:整个 overflow 改 hidden 会覆盖样式表的 overflow-x: clip,
|
||||
// 横向从「裁剪」变「可滚动容器」,手机上整页能被拖宽(真实事故)
|
||||
document.body.style.overflowY = 'hidden'
|
||||
document.body.classList.add('lb-open')
|
||||
} else {
|
||||
window.removeEventListener('keydown', onKey)
|
||||
document.body.style.overflow = prevOverflow
|
||||
document.body.style.overflowY = prevOverflow
|
||||
document.body.classList.remove('lb-open')
|
||||
}
|
||||
}
|
||||
)
|
||||
onBeforeUnmount(() => {
|
||||
window.removeEventListener('keydown', onKey)
|
||||
document.body.style.overflow = prevOverflow
|
||||
document.body.style.overflowY = prevOverflow
|
||||
document.body.classList.remove('lb-open')
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user