layui中,关闭layer弹窗的多种方法

在用layui做数据交互或其他业务功能时需要关闭指定的layer弹窗,以下是结合官方文档以及网友帖子整里的多种方法!

layer.close(index) - 关闭特定层

//当你想关闭当前页的某个层时

var index = layer.open();

var index = layer.alert();

var index = layer.load();

var index = layer.tips();

每一种弹层调用方式,都会返回一个index

layer.close(index);   //此时你只需要把获得的index,轻轻地赋予layer.close()即可

如果你想关闭最新弹出的层,直接获取layer.index即可

layer.close(layer.index);   //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的

当你在iframe页面关闭自身时

var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引

parent.layer.close(index); //再执行关闭
layer.closeAll(type) - 关闭所有层

如果只是一层弹窗,而你又不想多写代码,那么closeAll真的可以帮上你(不建议这样做,因为后期新增功能中有弹窗时需要增加index)。如果你不指向层类型的话,它会销毁掉当前页所有的layer层。当然,如果你只想关闭某个类型的层,那么你可以

layer.closeAll(); //疯狂模式,关闭所有层

layer.closeAll('dialog'); //关闭信息框

layer.closeAll('page'); //关闭所有页面层

layer.closeAll('iframe'); //关闭所有的iframe层

layer.closeAll('loading'); //关闭加载层

layer.closeAll('tips'); //关闭所有的tips层

你可能感兴趣的:(html,js,layui,LayUI,JavaScript,web)