2012-07-05 18 views
0

我有一個出方DIV,這裏面是有很多P的elementsmand綁定事件處理程序:去除P元素的事件處理中

$("#container").on("click","div",showNext) 

,這click事件綁定成功,但不知何故,所有的裏面的元素都綁定到這個事件處理函數,怎麼去掉?

在這裏看到的所有代碼:Jsfiddle

我要的是點擊div和隱藏當前和顯示下一個,但問題是當我把它藏起來,沒有AP元素上點擊.. 。

所以我錯過了什麼,我真的很新的js .....

回答

1

試試這個:

$(".con").on("click",showNext) 
.children().on('click',function(e){e.stopPropagation();}) 

它可以防止孩子在裏面點擊事件從冒泡的。

http://jsfiddle.net/doktormolle/KL4uw/

+0

因此,當我一個事件處理程序添加到一個外部元件,它仍然會影響內部元件?這是一個事件冒泡? – Lien

+0

。編號總是將事件分派給目標元素(本例中爲child-p),並首先在那裏觸發事件偵聽器(如果有的話)。冒泡事件(如點擊)然後也會觸發任何父母的事件,直到文檔對象(這是「冒泡」) –

+0

嘿,我有自動運行setInterval函數的另一個問題,請參閱[小提琴](http ://jsfiddle.net/strangeline/cYKeX/6/),它爲什麼會消失,我只使用觸發器方法,爲什麼所有這些都發生了? – Lien

相關問題