layer弹层遮罩挡住窗体解决

Posted win-and-coffee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了layer弹层遮罩挡住窗体解决相关的知识,希望对你有一定的参考价值。

使用代码:

<div>
<div>这里面某个按钮触发弹层<div>
<div id=‘dialog‘ hidden=‘hidden‘></div>
</div>
如果上面的按钮触发了弹层 layer.open 且content是某个DOM元素

content:$(‘#dialog‘)

那么这里弹出层,遮罩会遮住到弹窗导致操作不了。

 

官网给出的说法是  如果弹层的内容content是某个DOM元素的话,要放在body的根节点下。不能放在div里面了。

 

我看了html代码,最后生成的遮罩DOM元素的位置是body的子级,所以知道弹层的DOM要和遮罩的DOM 要在同一层。

 

所以这里再弹层的success的事件里面进行了处理,将遮罩的DOM位置挪动了一下,和弹层DOM元素同一级,代码如下:

success:function(layero){
var mask = $(".layui-layer-shade");
mask.appenTo(layero.parent());
//其中:layero是弹层的DOM对象
}
这样 弹层的遮罩DOM元素和弹层元素就在同一层了,就不会挡着弹层了。










以上是关于layer弹层遮罩挡住窗体解决的主要内容,如果未能解决你的问题,请参考以下文章

JS弹出层遮罩,隐藏背景页面滚动条细节优化

uni-app tabbar页面遮罩层遮不住tabbar问题解决

Keras 嵌入层遮罩。为啥 input_dim 需要是 |vocabulary| + 2?

layer弹层之美

photoshop怎么添加层遮罩?

如何给C4D添加多个层遮罩?