Javascript / Jquery单事件目标委派

我意识到event.target冗余会在将来与下一级别的另一个事件绑定时引发很多问题。

例如,当我在另一个内部有一个Div元素时。

我使用跟随Jquery代码绑定事件。

 $('div').bind('click', function(event){ alert(event.target.id) } 

有两个警告框而不是一个。 我理解为什么这个概念是因为我点击了2个div。

当然,更深层次的问题是当我尝试在事件之后使用event.target绑定事件时,它会依次绑定x2等等。

是否有可能摆脱外部div上的事件绑定并仅捕获内部。

提前致谢。

您可以使用event.stopPropgation()阻止事件冒泡,如下所示:

 $('div').bind('click', function(event){ alert(event.target.id); event.stopPropagation(); }); 

你可以在这里尝试一下 。 这将“捕获”获取它的第一个

上的click ,并且不会让它传播到任何父母。

我想你只需要在bind调用中选择内部div:

 $('div:eq(0)').bind('click', function(event){ alert(event.target.id) }