vue使用element组件,当引入iframe后,有的组件点击蒙层不能关闭

vue中使用iframe遇到的问题

做项目用iframe引入了报表组件,条件查询用了elemet的el-cascader,打开el-cascader选中选项后点击空白地方不能关闭,
在这里插入图片描述
后面找到问题是iframe的层级比较高,点击的是iframe。
解决方法是给外层div设置定位和z-index;iframe设置定位和z-index,iframe的z-index比外层div小就行了。
高兴的解决了bug,但后面查出数据后,iframe滚动条失效了。此时外层div z-index比较高,鼠标滚动是滚动的外层div。
最后的解决方法思路是,加了一空白div ,当el-cascader显示时,空白div z-index比iframe高,这时点击的是空白div就能隐藏,当el-cascader隐藏时,空白div删除,这时iframe的z-index高,滚动的就是iframe。

样式

//外层div
.content-box {
	position: relative;
}

iframe {
	position: relative;
	z-index: 1;
}
// 空白div
.model {
	position: absolute;
	z-index: 2;
	height: 100%;
	width: 100%;
}

用@visible-change="visibleChange"判断el-cascader的显示隐藏,再v-if去控制空白div

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值