解决vux 中popup 组件Mask 遮罩在最上层的问题

时间:2021-05-18

问题描述:

在IOS设备上遮罩层显示在弹出内容的上面,导致弹出内容不能正常显示内容和响应点击事件

解决方案:

找到该Popup组件的祖先DOM节点是否被设置该CSS属性:-webkit-overflow-scrolling: touch;

若被设置将该CSS属性,则去掉即可。

补充知识:完美解决VUX的popup组件滑动穿透的问题

最近使用vux的popup组件做个弹窗,在真机中使用发现存在滑动穿透的问题,即在弹出窗滑动内容,底层的内容也会跟着滑动,这种体验很不好。

废话不多说,直接上解决方法:

核心就是给根div添加固定定位。

具体实现如下:

<template> <div id='discounts' :class="{'fixed-touch':showDetail}"> <button @click="showDetail=true">弹出popup组件</button> // 遮罩层 <div class="overlayer" @touchmove.prevent v-show="showDetail" @click="showDetail=false"></div> // 这里注意下,要把popup组件的遮罩显示设置为false <popup v-model="showDetail" position="bottom" max-height="80%" should-rerender-on-show :show-mask="false"> <div class="popup-style">弹出框内容</div> </popup> </div></template><script>import { Popup } from 'vux'export default { data () { return { showDetail: false } }, components: { Popup }}</script><style>.fixed-touch {position: fixed;}.overlayer{ position:fixed; left:0; top:0; width:100%; height:100%; z-index: 500; background-color: #000; opacity: .5; }</style> 

按照如上方式便可完美解决vux的popup组件在移动端滑动穿透的问题。

以上这篇解决vux 中popup 组件Mask 遮罩在最上层的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章