Javascript 标识单击元素并在元素为<;时停止传播;a>;

Javascript 标识单击元素并在元素为<;时停止传播;a>;,javascript,html,css,onclick,Javascript,Html,Css,Onclick,html部分单击 <div id="aaa"> ...<a id="a1">...</a>...<a id="a2">...</a>... </div> ............... 我想添加一个click事件来处理div的click。 但所有元素都有其单击事件处理程序。而且click事件处理程序没有停止ropagation,因此它还将执行div click事件。我无法编辑元素a的事件处理程序并添加stopprop

html部分单击

<div id="aaa">
 ...<a id="a1">...</a>...<a id="a2">...</a>...
</div>

...............
我想添加一个click事件来处理div的click。 但所有元素都有其单击事件处理程序。而且click事件处理程序没有停止ropagation,因此它还将执行div click事件。我无法编辑元素a的事件处理程序并添加stoppropagation()


如何在div的事件处理程序中标识click源元素?如果它是元素a,我只返回,什么也不做

您可以检查单击事件目标标记名是否为锚返回(如果是)

document.getElementById('aaa').addEventListener("click", function(e){
  if(e.target.tagName.toLowerCase() === "a") return;
});

寻求代码帮助的问题必须包括在问题本身中重现代码所需的最短代码,最好是以最短的代码。看见