当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript addLoadEvent函数说明

Javascript
JavaScript教程:浅析JS运行机制
JavaScript类型检测小结
JavaScript内置对象:arguments
编写复杂环境下不出错的Javascript代码
掌握JavaScript语言
IE7中网页动态创建iframe时边框问题
总结常用JavaScript语法107条
AJAX教程(1):AJAX简介
AJAX教程(2):AJAX Http请求
AJAX教程(3):AJAX实例
AJAX教程(4):AJAX 浏览器支持
AJAX教程(5):AJAX-XMLHttpRequest 对象
AJAX教程(6):AJAX - 请求服务器
AJAX教程(7):AJAX - 服务器端的脚本
AJAX教程(8):AJAX 请求实例
AJAX教程(9):AJAX 请求 源代码
AJAX教程(10):AJAX 数据库实例
AJAX教程(11):AJAX XML 实例
AJAX教程(12):AJAX ResponseXML 实例
AJAX教程(13):通过XMLHTTP把文本文件载入HTML元素

Javascript 中的 javascript addLoadEvent函数说明


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 202 ::
收藏到网摘: n/a

网页加载完整后会触发一个onload事件,默认地一个事件只能和一个函数绑定。 为了在网页加载完后,同时执行多个函数,Simon Willison写了function addLoadEvent(func):
复制代码 代码如下:

function addLoadEvent(func){
var oldOnload = window.onload;
if (typeof window.onload != 'function'){
window.onload = func;
}
else {
window.onload = function(){
oldOnload();
func();
}
}
}

addLoadEvent工作流程:
把现有的window.onload事件处理函数的值存入变量oldonload。
如果在这个处理函数上还没有绑定任何函数,就像平时那样把新函数添加给它;
如果在这个处理函数已经绑定了一些函数,就把函数追回到现有指令未尾。
浏览器加载html内容是自上而下的(默认),而JS一般是在哪里引入——想想如果JS里面包含了一些即时执行指令,
它会操作根本不存在元素节点(因为还没有加载完)会有什么后果?结果就是出错。
addLoadEvent可以实现无论有多少个函数,都能让它们同时和window.onload事件绑定。