如何使用window.onclick检测div及其子级



示例代码:

window.onclick = function(event) {
if(event.target.matches('.myDiv')){
DO THIS
}
}

可以理解的是,这只会检查是否在myDiv上进行了特定的单击。

如果不使用<div onclick="function()">,也不将myDiv的每个子级硬编码到if语句中,有没有一种方法可以检查是否在div及其任何子级上进行了单击?

相反,您应该这样做:

var parent_div = document.getElementsByClassName(".myDiv");
parent_div.onclick = function(e) { /*DO SOMETHING*/ };

通过这种方式,您可以直接检查元素及其所有子元素上的单击,而不是从window获取单击事件,然后检查它是否是您想要的元素。

这样尝试:

window.onclick = function (event) {
if (event.target.classList.contains('myDiv')) {
event.target.remove();
}
}

最新更新