读书人

关于DOM编程艺术中的一个函数的困惑

发布时间: 2012-10-20 14:12:48 作者: rapoo

关于DOM编程艺术中的一个函数的疑惑
下面是一段绑定初始化函数的代码,但是有点看不懂,希望大家能帮忙注释下,先谢谢啦!

JScript code
           /*-----------下面的每一句希望注释下--------------*/            function addLoadEvent(func){                var oldonload = window.onload;                if(typeof window.onload != 'function'){                    window.onload = func;                }else{                    window.onload = function(){                        oldonload();                        func();                    }                }            }            /*-----------上面的每一句希望注释下--------------*/            addLoadEvent(firstFunction);            addLoadEvent(secondFunction);            addLoadEvent(threeFunction);            function firstFunction(){                alert(11);            }            function secondFunction(){                 alert(22);            }            function threeFunction(){                 alert(33);            }


[解决办法]
JScript code
/*    * window.onload事件的扩展:允许注册多个事件,以免造成事件的覆盖    * @param {function} func*/ function addLoadEvent(func){    var oldonload = window.onload;//如果当前window.onload中已指定事件,将其赋予oldonload保存    //下面的第一句:    //如果window.onload中不是函数类型,可以认为从未绑定window.onload事件,那么则直接将当前func注册进去    //换言之,如果后面再追加了一个函数进来的话,上面的oldonload就会等于此次的func了。    if(typeof window.onload != 'function'){        window.onload = func;    }else{        window.onload = function(){            oldonload();//否则,先执行以前注册进来的函数            func();//再执行此次追加进来的函数        }    }} 

读书人网 >JavaScript

热点推荐