MINT-UI中如何让遮罩层弹出后,阻止页面滚动?

发布于 2022-09-06 20:16:10 字数 173 浏览 16 评论 0

在MINT-UI中,类似Popup等组件,当遮罩层弹出后
需要阻止页面BODY的滚动,如何设定呢?没有找到相应的API

想通过监听遮罩层弹出关闭事件来实现,遮罩层关闭的事件在哪里可以监听呢?

查询源码后,发现类似lockScroll的选项,但是没有找到暴露的接口,这个设置项该如何设定才能生效?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

ζ澈沫 2022-09-13 20:16:10

clipboard.png

久随 2022-09-13 20:16:10

哥们找到方法了吗?我也遇到这个问题了

彼岸花似海 2022-09-13 20:16:10

监听v-model绑定的popupVisible,为true的时候,获取当前页面的外层div,设置其样式属性,height:100%;overflow:hidden;popupVisible为false时候,设置外层div height:'',overflow:‘’不理解可以沟通,个人有篇文章里面也提到了这个问题

2022-09-13 20:16:10

<mt-popup position="right"

       v-model="popupVisible"
       pop-transition="popup-fade">

<div class="overlayer" @touchmove.prevent >

....

</div>
</mt-popup>

/遮罩层/
.overlayer{

position:fixed;
left:0;
top:0;
width:100%;
height:100%;
z-index:10;

}

这样可以组织蒙层弹出时,还能滑动body的问题,但是鼠标滑轮依然可以。
乱世争霸 2022-09-13 20:16:10
    <div @touchmove.prevent>
       <mt-popup
           class="my-num-box"
           :closeOnClickModal="false"
           v-model="showMyNum">
    
           <h3>我的抽奖号码</h3>
           <ul>
              <li v-for="(item, index) in myNumList" :key="index">{{item}}</li>
           </ul>
           <footer @click="showMyNum = false">我知道了</footer>
    
      </mt-popup>
  </div>
  
  
  外层添加一层div,加上 @touchmove.prevent

单挑你×的.吻 2022-09-13 20:16:10
<mt-popup :lockScroll='true'>
<div @touchmove.prevent >内容</div>
</mt-popup>

:lockScroll='true' 阻止body页面可以通过鼠标滚轮滚动
@touchmove.prevent
popup弹窗后,阻止在其窗口中点击拖动body页面

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文