关于DOM编程艺术中的一个函数的困惑
关于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();//再执行此次追加进来的函数 } } }