2012-07-01 190 views
6

我认为event.stopImmediatePropagation()无法在Chrome浏览器上运行。 有没有人有解决它? (替代代码)? 谢谢。event.stopImmediatePropagation()不适用于Chrome浏览器

+0

我想'event.stopPropagation()'或在你的监听器处理器的末尾添加'return false'是不够的? –

+0

@FabrícioMatté只会停止传播到父元素。 stopImmediatePropagation()也停止到同级元素。请参阅http://jsfiddle.net/GkJDF/ –

+0

还可以防止绑定到当前元素的下一个事件处理程序运行,现在我看到了更清晰的区别。谢谢@ThomasClayson。 –

回答

-1

event.stopImmediatePropagation()隐含调用event.stopPropagation()

可以请你event.stopPropagation()试试?

+3

event.stopPropagation()与event.stopImmediatePropagation()不同。后者影响兄弟元素和父元素的处理者;前者仅用于父元素。 – Jeff

+0

@Jeff'event.stopImmediatePropagation()'与兄弟元素无关。是的,它可以防止事件冒泡到父元素,就像'event.stopPropagation()'一样,但是也可以防止同一元素上的任何后续事件处理程序触发。 https://developer.mozilla.org/en-US/docs/DOM/event.stopImmediatePropagation – riscarrott

+0

@riscarrott:你的链接证实了杰夫上面所说的,并驳斥你的陈述。 – Flimzy

0

希望你不是在寻找event.preventDefault()

1

尝试

event.callNonExistingMethode(); 

不要使用event.stopImmediatePropagation();仅仅利用stopImmediatePropagation();

相关问题