项目场景:el-select和el-popper在一个长表单中,长表单滑轮进行滚动时,下拉不会收起,从而产生交互问题
解决方案:
提示:添加点击事件失去焦点,从而收起下拉
// 如果是在vue中,先给有滚轮滑动的div或者其他元素添加@scroll = handleScroll事件,监听滚轮的滑动
handleScroll(){
// 创建鼠标按下和事件(主要是针对el-select收起)
const MousedownEvent = new Event('mousedown', {bubbles: true});
const MouseupEvent = new Event('mouseup', {bubbles: true});
// 通过DOM派发事件
document.dispatchEvent(MousedownEvent);
document.dispatchEvent(MouseupEvent);
}
// 处理el-popper收起
document.body.click();