解决 element-ui 抽屉弹窗、弹窗、气泡弹窗、消息弹窗、确认弹窗【el-drawer、el-dialog、el-popover、$message、$confirm】的 遮罩层z-index问题

对于this.$confirm 通过customClass传一个z-index样式名 是控制的 确认弹窗里内容dom的层级,如果需要设置整个确认弹窗的z-index,可以通过zIndex传入【element-ui文档里没有查到,但是在源码里找到了一个zIndex prop】。

在抽屉弹窗<el-drawer>上要弹出弹窗<el-dialog>,弹窗里面还有<el-popover>,抽屉弹窗js里还有this.$confirm(),弹窗层级顺序全部要正确,可以通过组合传class、customClass、zIndex来保障第一次打开抽屉后的所有弹出层的层级顺序是正确的,但是element-ui组件里的弹出层用到了node_modules\element-ui\lib\utils\popup\popup-manager.js,而该文件对应的导出对象PopupManager内部维护了一个zIndex属性,这个zIndex属性会不断累加,因此给一些弹窗组件设置了 z-index:9000 !important;这样的样式后,第一次打开抽屉弹窗及里面的所有弹窗时,element-ui生成的遮罩层dom【同时打开的所有element-ui弹窗公用同一个遮罩层dom,可在浏览器控制台的查看元素界面里的”</body>“前看到一个”<div class="v-modal" style="z-index: 2002;" tabindex="0"></div>“这样的dom节点】的z-index值比较低【例如2002】,但会在新打开的弹窗的z-index基础上不断累加【
    node_modules\element-ui\lib\utils\popup\popup-manager.js里有如下方法:

    nextZIndex: function nextZIndex(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值