首頁 >web前端 >js教程 >js動態加入onload、onresize、onscroll事件(另類方法)_javascript技巧

js動態加入onload、onresize、onscroll事件(另類方法)_javascript技巧

WBOY
WBOY原創
2016-05-16 17:45:201037瀏覽

window 的 onload、onresize、onscroll 事件,跟其他的事件不一樣,它不能用 attachEvent 或 addEventListener 來增加。

也就是說,它只能這樣來(以onload 為例,下同):

複製程式碼


程式碼如下:


window.onload = function()
{
// ...
};
但這有個問題,就是想再為onload 增加新的事件處理程序時,不能直接為window.onload 賦值了,否則前面的賦值就會被覆寫了。
可這樣做
複製程式碼



複製程式碼



複製程式碼


複製碼>
var oldLoadHandler = window.onload;
window.onload = function()
{ if (oldLoadHandler) { oldLoadHandler(); } oldLoadHandler(); newLoadHandler(); };

在ezj 中,就更加方便了。



複製程式碼
程式碼如下: $(windowHan.ready(onloadHandler1) $(windowHan. >$(window).ready(onloadHandler2); 說明 我們一般接觸的onload 事件是document.body.onload,但這其實其實其實是由於IE 的誤導,正確的應該是window.onload,window.onload 在IE、Firefox、Chrome 中均有效。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn