前言
有些函數,必須在網頁加載完畢後執行。比如:涉及DOM操作的。
網頁加載完畢時會觸發一個onload事件,將函數綁定到這個事件上即可。
復制代碼 代碼如下:
window.onload = myFunction;
問題來了:如果需要同時綁定多個事件,該如何處理呢?有兩種解決方法
方案一
創建一個匿名函數,來容納需要綁定的多個事件,再講這個匿名函數綁定到onload事件上
window.onload = function(){ firstFunction(); secondFunction(); ...... }
方案二
由Simon Willsion編寫的addLoadEvent函數:
function addEventLoad(func){ var oldOnload = window.onload; if(typeof window.onload != 'function'){ window.onload = func; }else{ window.onload = function(){ oldOnload(); func(); } } }
將現有的window.onload事件處理函數的值存入變量oldOnload
如果這個處理函數上還沒有綁定函數,則和那樣把新函數綁定給它。
如果已經綁定了函數,則把新的函數追加到指令的末尾。
調用方法:
addEventLoad(firstFuction);
addEventLoad(secondFuction);
以上內容是小編通過兩種方案給大家介紹的window.onload綁定多個事件的方法,希望對大家有所幫助!