demo如下:
页面结构:
当我们需要检测一个点击是发生在一个特定元素 el 的内部还是外部,通常使用的方法
let pEl = document.querySelector('.p')
window.addEventListener('click', e => {
// 获取被点击的元素
const currtentEl = e.target;
console.log(currtentEl)
// 检测在el元素的内部还是外部
if (pEl.contains(currtentEl)) {
// 在el里面点击了
console.log('在el里面点击了')
} else {
// 在el外面点击了
console.log('在el外面点击了')
}
});