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

Javascript
javascript事件问题
jquery tools 系列 scrollable学习
Javascript中的var_dump函数实现代码
javascript 获取select下拉列表值的代码
JS 网页彩蛋 实现代码
javascript 定义初始化数组函数
Javascript 阻止浏览器默认操作的实现代码
Javascript 检测、添加、移除样式(className)函数代码
Javascript String.replace的妙用
用 Javascript 验证表单(form)中多选框(checkbox)值
用 Javascript 验证表单(form)中的单选(radio)值
Javascript 获取滚动条位置等信息的函数
用Javascript 和 CSS 实现脚注(Footnote)效果
禁止JQuery中的load方法装载IE缓存中文件的方法
jquery 简单导航实现代码
JS 日期验证正则附asp日期格式化函数
javascript 一些用法小结
关于javascript 回调函数中变量作用域的讨论
一个简单的JavaScript 日期计算算法
javascript 基础简介 适合新手学习

Javascript 中的 javascript addLoadEvent函数说明


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 259 ::
收藏到网摘: 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事件绑定。