layui弹出层第一次弹出按钮位置偏下,再次点击正常显示

分享 未结 2 76
957X
957X 2019-8-5
悬赏:20飞吻
第一次点击弹窗时弹出层位置偏下
如图:

第二次点击则正常(垂直居中)

代码:

解决方法:把 layer 放到 ready中,然后在 ready中,加入load,再关闭load即可。

layui.use('layer', function(){
var layer = layui.layer;
layer.ready(function(){
var index = layer.load(2);
layer.open({
type: 2,
shade: 1,
content: ['https://www.baidu.com', 'no'], //这里content是一个普通的String
offset: 'auto',
area:["80%","80%"],
});
layer.close(index);
});
});
希望能帮到大家。
回帖
  • 冷殇o
    2019-8-6
    其实这个是因为你的layer设置了自动居中,而弹窗内容是在layer初始化之后才加载的,在刚第一次加载的时候layer内是空的 所以layer高度会很小,他就上下垂直居中了,这时内容加载撑开了layer,就显得往下了,第二次打开的时候layer已经被撑开了高度很高,就会根据这个高的layer来进行居中,所以第一次显得低(其实空的layer已经垂直居中了),第二次正常。这个问题解决只要在初始化layer(就是在layer.open())之前加载layer中的内容就可以了
    0 回复
  • 冷殇o
    2019-8-6
    同理 layer中的table不会自适应宽度同样是table和layer的初始化顺序不正确所致
    0 回复