2011-07-26 57 views
1

在DOM中創建元素時是否可以觀察「加載」事件?更具體地說,我有興趣觀察是否添加了新的選擇框,然後對選擇框中的選項進行排序。Jquery.live()在DOM中觀察加載新元素

我試過的東西,如:

$("select").live("load", mySortSelectFunction) 

這顯然是行不通的。也許「加載」事件不會觸發select元素?

如果沒有「加載」事件,那麼在DOM中的選擇框準備好時如何獲得通知?我想避免在創建選擇框的地方從代碼中發出一些自定義事件。我只想在全局腳本中添加一個小事件監聽器,然後所有的選擇框都會自動排序,無論它們何時創建。

親切的問候,

克里斯蒂安·索內詹森

+4

在你提出新問題之前,處理你的舊問題。 – avall

+0

請詳細說明一下嗎?我有一些與這個問題有關的未解決的問題嗎? –

回答

0

沒有這樣的事件或功能,就可以實現。你基本上可以嘗試找到在頁面加載的所有選擇元素,然後應用排序功能

$(document).ready(function(){ 

    $("select").each(function(){ 
    mySortSelectFunction(this); 
    }); 

}); 
+0

是的,這是一個選項,但我正在維護一個FAT JavaScript客戶端,其中包含大量的ajax,可以抓取100個html片段並將它們放入DOM中。我真正需要的是一個通用的偵聽器,它可以觀察代碼片段何時包含選擇框。否則,我將不得不確定選擇框的每個地方,並進行一些明確的調用來通知selectboxSorter。 –