我想知道是否可以在加載dom時在腳本創建的項目上綁定加載或就緒事件。我聽說live(),但它不是可點擊的,它只是一個必須加載的項目。在javascript dom元素創建時綁定ready事件
感謝您的幫助!
我想知道是否可以在加載dom時在腳本創建的項目上綁定加載或就緒事件。我聽說live(),但它不是可點擊的,它只是一個必須加載的項目。在javascript dom元素創建時綁定ready事件
感謝您的幫助!
我猜你最好的照片是load
那裏的事件。
$('element').load(function(){
alert('loaded');
});
本地
var elem = document.getElementById('element_id');
elem.onload = function(){
alert('loaded');
};
動態地創建又如:
$('<img/>', {
src: '/images/myimage.png',
load: function(){
alert('image loaded');
}
}).appendTo(document.body);
如果你希望能夠到的代碼片段分開創建的項目,並加載事件處理你可以嘗試使您的動態創建的元素在窗口上觸發自定義事件:
var myElement = $('<img/>', {
src: '/images/myimage.png'
}).appendTo(document.body);
$(window).trigger({type: "myElementInit", myObject : myElement});
通過在額外參數中指向自己的指針,您可以在jQuery(document).ready中有一個單獨的處理程序設置,以查找「myElementInit」窗口事件並獲取元素的引用額外的參數:
jQuery.('window').bind("myElementInit", function(event){
var theElement = event.myObject;
...
});
可以使用.on()
事件的授權形式,如documented here:
委託事件有優勢,他們可以處理來自 子孫元素事件稍後添加到文檔中。通過挑選在連接了委託事件處理程序時保證出現的元素,可以將委派事件用於 ,從而避免需要頻繁地附加和刪除事件處理程序。這個 元素可以是模型 - 視圖 - 控制器設計中的視圖的容器元素,例如,如果事件 處理程序想要監視文檔中的所有冒泡事件,則該元素可以是
document
。document
元素在 加載任何其他HTML之前在文檔的頭部可用,因此在沒有 等待文檔準備就緒的情況下附加事件是安全的。
問題是我無法編輯父項。 – Artusamak 2010-08-16 16:37:21