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