由于elementUI
的select
、dialog
等弹出框z-index
都是叠加,造成banner
的显示有点瑕疵
比如下拉框滚动超过banner
时:
如果设置banner
的z-index
最大值,一旦出现遮罩层就会露出顶部:
想到一种方法,只要滚动的时候让select
失焦就可以隐藏下拉框
求大佬们的解决方法(。◕ ∀ ◕。)
由于elementUI
的select
、dialog
等弹出框z-index
都是叠加,造成banner
的显示有点瑕疵
比如下拉框滚动超过banner
时:
如果设置banner
的z-index
最大值,一旦出现遮罩层就会露出顶部:
想到一种方法,只要滚动的时候让select
失焦就可以隐藏下拉框
求大佬们的解决方法(。◕ ∀ ◕。)
/**
* 源码中找了个遍,没发现有什么现有的属性或方法可用,以下是比较扯淡的解决方案.....虽然有点扯,但是可以完美解决问题
* 动态修改headbar的z-index,取文档中所有poppers中最大的zindex + 1
* page-wrapper 绑定点击的事件的区域容器,如果可以,可以是document
*/
const wrapper = document.getElementById('page-wrapper')
wrapper.addEventListener('click', () => {
setTimeout(() => {
const poppers = document.getElementsByClassName('el-popper')
const zIndexs = []
for (let i = 0; i < poppers.length; i++) {
zIndexs.push(poppers[i].style.zIndex)
}
this.zIndex = Math.max.apply(null, zIndexs) + 1
}, 30)
}, true)
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
4 回答4.3k 阅读✓ 已解决
可以设置不同的z-index值 啊