如何实现移动端背景禁止滚动,弹出层滚动?

在页面中禁止了touchmove事件,这样可以解决移动端h5滚动,但是有个弹出层需要滚动,这个弹出层设置overflow:scroll,在手机上是不会滚动的,有什么解决方案吗?
`
//禁止移动端滚动

function stopScroll(e) {
    e.preventDefault()
}
document.getElementsByTagName("body")[0].addEventListener('touchmove', stopScroll, { passive: false })`
阅读 355
评论
    2 个回答
    • 71

    最后解决方案很简单,把js写的禁止touchmove事件给去掉了。
    然后body写成这样
    `body {

    position: fixed;
    overflow-y: hidden;
    width: 100%;
    height: 100%;
    font-size: 0.6rem;
    margin: 0;
    padding: 0;

    }`
    通过position:fixed 来禁止背景滚动。需要滚动的弹窗直接overflow:scroll就好了。

      css可以吗
      先设置一个固定高度,100%或者100vh...
      不能滚动的时候设置overflow:hidden
      能滚动的时候设置overflow:auto

        撰写回答

        登录后参与交流、获取后续更新提醒