因为layui官网说 如果弹层的内容content是某个DOM元素的话,要放在body的根节点下。不能放在div里面了。
所以如果不在body根目录下的话会导致遮罩遮挡全屏,因为最后生成的遮罩DOM元素的位置是body的子级,所以知道弹层的DOM要和遮罩的DOM 要在同一层。
如图:
所以这里再弹层的success的事件里面进行了处理,将遮罩的DOM位置挪动了一下,和弹层DOM元素同一级,代码如下:
var ht = null
table.on('tool(orderList)', function (obj) {
selectData = obj.data;
var layEvent = obj.event;
if (layEvent == 'delete') { //表格按钮名
console.log( selectData.id)
ht=layer.open({
type: 1,
shade: 0.3,
title: selectData.id+"合同", //不显示标题
area: ['445px', '560px'],
shadeClose:true,
content: $('.tableBox')
,success:function(layero){
var mask = $(".layui-layer-shade");
mask.appendTo(layero.parent());
//其中:layero是弹层的DOM对象
}
});
}
}
layer.close(ht)
给弹框定义名称,关闭时可使用layer.close(弹框变量名)
转截g