layuiadmin layer iframe弹窗 背景透明化

一、layer自定义皮肤
自定义透明度

body .layeriframe {
      background-color: rgba(255,255,255,0.8);
    }

layui.layer.open({
          type:2,
          skin: 'layeriframe',
	 	  ......//参数省略
          success: function (layero, index) {
            console.log(layero.children()[1].children[0].style)
            //layero.children()[1].children[0].setAttribute("backgroundColor","rgba(255,255,255,0.8)")
            layero.children()[1].children[0].setAttribute("allowTransparency",true)
            //layero.children()[1].children[0].style.backgroundColor = "rgba(255,255,255,0)"
          },
          end:function (){
          }
        });

二、给iframe标签加上allowTransparency属性

在回调函数里通过layero 给iframe标签加上allowTransparency=true
我的代码里面,iframe在layero.children()的下标1的位置,具体下标,可以打印layero.children()看一下

layui.layer.open({
          type:2,
	 	  ......//参数省略
          success: function (layero, index) {
            console.log(layero.children()[1].children[0].style)
            //layero.children()[1].children[0].setAttribute("backgroundColor","rgba(255,255,255,0.8)")
            layero.children()[1].children[0].setAttribute("allowTransparency",true)
            //layero.children()[1].children[0].style.backgroundColor = "rgba(255,255,255,0)"
          },
          end:function (){
          }
        });

也可以直接通过layero对页面文档直接一步到胃, 就不用再执行后续几步操作了

layero.children()[1].children[0].setAttribute("allowTransparency",true)
layero.children()[1].children[0].contentDocument.getElementsByTagName("html")[0].style.backgroundColor = "transparent"
layero.children()[1].children[0].contentDocument.getElementsByTagName("body")[0].style.backgroundColor = "transparent"

三、修改被装载页面的html

在被装载页面的html头文件位置修改background-color样式
原因: layuiadmin框架的admin.css文件里对html标签有全局配置,要覆盖修改
在这里插入图片描述

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/html" style="background-color: transparent">
<head>

四、修改被装载页面的body样式
修改body的background-color样式为透明

</head>
<body style="background-color: transparent; ">

五、看效果
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值