Layer弹出到top层

举报
孙小北 发表于 2021/11/08 08:18:26 2021/11/08
【摘要】 项目框架用了iframe,所以在用layer时,默认layer.open弹出的窗口只能在iframe子窗口区域显示。若想让layer在父窗口或者说框架的最顶层显示,可以用top.layer.open或者parent.layer.open,但是没反应。需要在父页面中引入layer.js文件,导入后就能正常显示在父窗口页面了。top和parent是浏览器的内置对象,top表示最顶层容器,pare...

项目框架用了iframe,所以在用layer时,默认layer.open弹出的窗口只能在iframe子窗口区域显示。若想让layer在父窗口或者说框架的最顶层显示,可以用top.layer.open或者parent.layer.open,但是没反应。需要在父页面中引入layer.js文件,导入后就能正常显示在父窗口页面了。

top和parent是浏览器的内置对象,top表示最顶层容器,parent表示父容器。

(1)普通用法:在当前页面引入Layer相关css和js文件

layer.open({
  type: 2,
  content: 'iframeC.html',
  shade: false,
  success: function(layero, index) {
    top.layerFrameConfig.iframeC = {
      layer_index: index,
      layer_layero: layero    }
  }});

(2)top.layer.open用法:需在最高层页面引入Layer相关css和js文件

top.layer.open({
  type: 2,
  content: 'iframeD.html',
  shade: false,
  success: function(layero, index) {
    top.layerFrameConfig.iframeD = {
      layer_index: index,
      layer_layero: layero    }
  }});

(3)parent.layer.open用法:需在父页面引入Layer相关css和js文件

parent.layer.open({
  type: 2,
  content: 'iframeE.html',
  shade: false,
  success: function(layero, index) {
    top.layerFrameConfig.iframeE = {
      layer_index: index,
      layer_layero: layero    }
  }});

一般常用top.layer.open方式:

(1)最外层页面引入Layer相关js和css

(2)本页面完成top.layer.open方法

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。