`

function addLoadEvent(func)--Simon Willison

阅读更多
为了在网页加载完后,同时执行多个函数,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事件绑定。
分享到:
评论

相关推荐

    javascript封装addLoadEvent实现页面同时加载执行多个函数的方法

    本文实例讲述了javascript封装addLoadEvent实现页面同时加载执行多个...function addLoadEvent(func) { var oldonload = [removed]; if (typeof [removed] != 'function') { [removed] = func; } else { [removed]

    [removed]追加函数使用示例

    代码如下: [removed] function tt1(){ alert(... } function addLoadEvent(func) { var oldonload = [removed]; if (typeof [removed] != ‘function’) { [removed] = func; } else { [removed] = function() {

    深入理解JS addLoadEvent函数

    function addLoadEvent(func) { var oldonload=[removed]; if(typeof [removed]!='function') { [removed]=func; } else { [removed]=function() { oldonload(); func(); } } } 理解起来就是: 1.把...

    超实用的JavaScript表单代码段

    整理了下比较实用的Javascript表单代码段,分享给大家供大家参考,具体... function addLoadEvent(func){ var oldonload = [removed]; if(typeof [removed] != 'function'){ [removed] = func; }else{ [removed]

    读JavaScript DOM编程艺术笔记

    1.获得当前元素的下一个元素 代码如下: function getNextElement...外部引入的js,添加页面加载方法 代码如下: function addLoadEvent(func){ var oldonload=[removed]; if(typeof [removed]!=’function’){ window

    JavaScript装饰器函数(Decorator)实例详解

    本文实例讲述了JavaScript装饰器函数(Decorator)。分享给大家供大家参考,具体如下: 装饰器函数(Decorator)用于给对象在运行期间动态的增加某个功能,职责等。...function addLoadEvent(fn) { var oldEvent =

    javascript addLoadEvent函数说明

    网页加载完整后会触发一个onload事件,默认地一个事件只能和一个函数绑定。

    [removed]绑定多个事件的两种解决方案

    前言 有些函数,必须在网页加载完毕后执行。比如:涉及DOM操作的。 网页加载完毕时会触发一个onload事件,将函数绑定到这个事件上即可。 复制代码 代码如下: ...由Simon Willsion编写的addLoadEvent函数:

    javascript工具库代码

    代码如下:/* *YYJ.js 主要提供后台应用方法 *目前有Ajax、addLoadEvent、deleteAll、getByClass、$C(=getByClass)、$、yyjtable、setCss、getCss、iaArray等方法。最后面还提供了一个 *可实例化的方法YYJ.tick...

Global site tag (gtag.js) - Google Analytics