2013-12-23 56 views
0

我有一个事件,我想要触发每次节点添加到我的dom。该事件被称为qt_nodeAddedjQuery的触发器和永久循环

我附加一个监听器这一点,只希望当它引发了关于在我的HTML #otherID与ID身份识别码

$("body").on("qt_nodeAdded", "#myID", function() { 
    ... 
    $("#otherID").trigger("qt_nodeAdded"); 
    ... 
}); 

在div被包裹在里面#myID它被调用。

我怎样才能让它不触发#otherID?

小提琴: http://jsfiddle.net/eNWZ2/

+0

你的问题并不清楚你到底想要什么..请提供更多信息 –

+0

它是否正常工作。你想做什么?? –

回答

2

这是因为事件冒泡的,处理的一种方法是停止事件传播... jQuery的处理这个问题在委托事件特定的方式。

$("body").on("qt_nodeAdded", "#otherID", function (event, data) { 
    event.stopPropagation(); 
}); 

演示:Fiddle

+0

好的,没错;) –

+1

@ A.Wolff在这种情况下发生了一些jQuery魔术:) –

+0

好吧,所以如果我不添加一个侦听器的#otherid我不能过滤它,应该这样做if(node.is(“#myID “){...}在处理程序中? – klundby