layer弹层遮罩挡住窗体

Layer被遮罩覆盖,layer挡住页面层

在用 layer 弹层的时候出现遮罩 layui-layer-shade 挡住弹层窗体的事情,网上找到的方法都是去找到 layui-layer-shade 遮罩层然后插入到弹层中去:

var mask = $(".layui-layer-shade");
mask.appendTo(layero.parent());

但是这么写之后bug并没有完全的修复此问题,还是会偶发性发生此bug,查看官方文档:

/*
 如果是页面层
 */
layer.open({
  type: 1, 
  content: '传入任意的文本或html' //这里content是一个普通的String
});
layer.open({
  type: 1,
  content: $('#id') //这里content是一个DOM,注意:最好该元素要存放在body最外层,否则可能被其它的相对元素所影响
});

看第二个 layer.open:这里 content 是一个DOM,注意:最好该元素要存放在 body 最外层,否则可能被其它的相对元素所影响

但有些时候页面的前端的 view 页面都是头部尾部共用的,所以直接放到 body 最外层很麻烦,于是还是采用传入 html 到 content 中的方法来解决此问题

注意:在进行 dom 操作的时候,记得通过已经弹出来的页面父级 layero.selector 找到相应的中的元素而不是原来的已经隐藏的元素!

例:

layer.open({
  content: $('#id').html(),
  success: function(layero, index){
    console.log(layero, index);
    console.log(layero.selector);
  }
}); 

文章有帮助,请点赞支持一下,谢谢。

如果没有解决问题,可以到layui交流群(qq)中讨论一下:683048836

文章推荐:

扫描二维码关注公众号,回复: 8592118 查看本文章

layui弹层同时弹出多个 / layer.open() 同时存在多个

发布了77 篇原创文章 · 获赞 116 · 访问量 21万+

猜你喜欢

转载自blog.csdn.net/qq6759/article/details/91520575