window.onload,方法在项目中经常被使用,用法如下:
function func(){alert("window的Onload事件被触发啦!");return;}
window.onload=func;
或者如下:
window.onload=function(){alert("window的Onload事件被触发啦!");return;}
1.问题:
但window.onload 不能同时加载多个函数。比如:
function t(){
alert("t")
}
function b(){
alert("b")
}
window.onload =t ;
window.onload =b ;
后面会把前面的覆盖,上面代码只会输出 b。
2.解决方法
方法一:
写一个总的函数调用需要触发的函数
window.onload =function() { t(); b(); }
方法二:
写一个方法
使用addLoadEvent(func)
使用如下:
function t(){
alert("t")
}
function b(){
alert("b")
}
function c(){
alert("c")
}
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload();
func();
}
}
}
addLoadEvent(t);
addLoadEvent(b);
addLoadEvent(c);
//等价于 window.onload =function() { t(); b(); c() ;}