检测目标元素之外的点击事件

常见的下拉菜单,在点击元素之外的地方会收起菜单,可以用到contains()进行判断

<div>
    <button>show</button>
    <Dropdown>...</Dropdown>
</div>
const btn = document.querySelector('button')
document.addEventListener('click', (e) => {
    const isClickOutSide = !btn.contains(e.target)
    if(isClickOutSide) ...
    else ....
})

 

posted @ 2024-08-21 11:30  Karle  阅读(12)  评论(0编辑  收藏  举报