网页加载完毕时会触发一个onload事件,这个事件与window对象相关联
现在有两个函数a1、a2需要在页面加载时得到执行:
function a1(){
......
}
function a2(){
......
}
第一种方法:
逐一绑定到onload事件上。
window.onload = a1;
window.onload = a2;
但是每个事件处理函数只能绑定一条指令,所以a2会取代a1。
那么,
第二种方法:
使用一个匿名函数来容纳a1、a2函数
window.onload = function(){
a1();
a2();
}
但是如果执行的函数过多扩展性不太好
第三种方法:
一个弹性的解决方法,需要额外写一个函数绑定事件
function addLoadEvent(func) {
//将已绑定的onload函数赋值给一个临时函数变量
var oldonload = window.onload;
//判断是否已有函数绑定
if (typeof oldonload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload();
fun();
}
}
}
使用方式:
addLoadEvent(a1);
addLoadEvent(a2);
来自: javascript dom 艺术编程书中