2010-02-20 55 views
0

我面臨的問題很少,尤其是事件冒泡和「活」方法。爲什麼「活」不綁定到實際元素

我有一個很少的單元格的表格,並且在每個單元格「td」中都有一個列表和一個鏈接「li a」。這些鏈接有一個與他們相關的「.class」。

所以,我只是想使鏈接的作品,我用的是活的方法(因爲它們是動態創建)

$('.aclass').live('click',function() { 
// Do something 
}); 

當我看使用谷歌Chrome瀏覽器開發工具偵聽事件,我看不是鏈接那聽取匿名功能,但整個單元格「td」。

爲什麼?我怎樣才能讓鏈接聽功能?

+0

我不認爲我完全理解這個問題。舉一個你的HTML的例子。 – KyleFarris 2010-02-20 05:06:55

回答

1

[更新]

現在的jQuery有.on方法,這是更好的,更清晰我建議您只對所有事件處理使用.on.off

[/更新]

你必須在下一次更加清楚地寫;)

直播功能結合的事件,您選擇的所有元素的父元素,所以你的情況,以元素的父有'aclass'類。然後,當點擊適合選擇器的事物時,它會監聽並調用您的事件功能。這就是爲什麼這種行爲是不同的。

如果你願意,你創造一些新的元素後,點擊直接綁定到一個元素使用綁定的,而不是活的,做

$('.aclass').unbind('click').bind('click',function(){ something }); 

每次

0

live方法是特別是對動態創建的元素很有用。你的情況看來,在即時不創建的鏈接,你可以簡單地使用:

$('.aclass').click(function() { 
// Do something 
}); 
相關問題