中的文檔上觸發「onload」事件我目前正在爲Javascript方法開發單元測試,以檢測文檔的準備情況。這段代碼已經在框架級別了,所以請避免提到這已經在jQuery或其他庫中實現。如何在IE
我已經成功地模擬了「readystatechange」改變事件用下面的代碼:
var event;
event = document.createEventObject();
event.type = 'readystatechange';
document.fireEvent('onreadystatechange',event);
我沒有爲「負荷」事件這樣做。在IE7無效參數錯誤,由調用拋出下面的代碼結果fireEvent最後一行:
event = document.createEventObject();
event.type = 'load';
document.fireEvent('onload',event);
有沒有人這樣做,或失敗之前做到這一點?我也對任何建議以不同的方式解決事件感興趣。
編輯:由新月新鮮的建議下,我改變了我的代碼:
event = document.createEventObject();
event.type = 'load';
document.body.fireEvent('onload',event);
沒有更多的錯誤,但是對於「onload事件」聽者不火。下面是我如何配置它:
document.attachEvent('onload',listener);
'load'事件實際上在'document.body'上觸發。所以你可以試試'document.body.fireEvent('onload',event)'。我懷疑這實際上會觸發連接到'onload'的句柄。如果它確實讓我震驚...... – 2009-12-09 16:22:41
你是100%的權利。在document.body上觸發事件可以沒有錯誤地完成,但是不會觸發附加了document.attachEvent的偵聽器。 – 2009-12-09 16:32:13
@Eric:這麼想。這是一個無賴的人。 – 2009-12-09 16:42:07