iview中poptip内按钮(点击事件)失效

iview中poptip内按钮失效

有一个需求是弹框下载,我这里用到了poptip组件,样式如下:


功能是点击报表下载跳走到指定页面。

看似简单,但实现后发现点击后,如果按住鼠标时间稍微长一点点击事件是无法触发的,然后一顿search。
发现有说mouseleave和click事件冲突导致的,然后查看poptip源代码,发现里面确实定义了mouseleave事件,也没暴露出来。

想来想去,算了自己去实现一个。

自己重新写了一个弹框,要做到点击页面其他位置直接关闭弹框。用到了下面监听方法

document.addEventListener('click', (e) => {
let sArea = document.querySelector('#弹框id')
let tArea = e.target
// 点击区域不在目标区域内(是点击了子元素),关闭弹框
if (!sArea.contains(tArea)) {
this.isShowPop = false // 关闭自己的弹框
}
})

原文地址:https://www.cnblogs.com/victory820/p/13947913.html