我有一个点击功能绑定到许多元素。有时这些元素可能会彼此坐在一起。所以,click事件绑定到一个孩子,并绑定到它的父代。该方法特定于单击的元素。自然,由于事件冒泡,孩子的事件首先被解雇,然后父母被解雇。我不能同时打电话给他们,因为父母事件会覆盖孩子的事件。所以我可以使用event.stopPropagation(),所以只有第一个元素点击接收事件。问题是还有其他点击事件附加到元素,例如,我在这些元素上使用jQuery的可拖动。如果我停止传播click事件,则可拖动不起作用,并且不会调用以下点击事件。jQuery:如何停止绑定函数的传播而不是整个事件?
所以我的问题是:有没有办法阻止事件将调用的方法事件冒泡而不是整个事件?
辉煌的约翰,但这里是概率。
<div id="Elm1"><!-- relative -->
<div class="Elmchildren"></div><!-- absolute-->
<div class="Elmchildren"></div><!-- absolute-->
<div class="Elmchildren"></div><!-- absolute-->
<div id="Elm2"><!-- relative -->
<div class="Elmchildren"></div><!-- absolute-->
<div class="Elmchildren"></div><!-- absolute-->
<div class="Elmchildren"></div><!-- absolute-->
</div>
</div>
单击事件绑定到#Elm1和#Elm2。儿童的宽度和高度都是100%。所以他们实际上是目前的目标。
我发布了我的答复作为新答案,以便您可以看到HTML。看下面 – UpHelix 2010-06-04 20:52:45
e和evt不匹配 – 2010-06-04 21:06:09
@Mark,是的。 @John,一些newby可能会花费几个小时...你可能想为此编辑它:D – UpHelix 2010-06-04 21:17:34