富贵资源网 Design By www.hznty.com
为了让函数只在页面加载完毕后才得到执行,我们会把函数绑定到onload事件上:
window.onload = userFunction
但如果有两个函数:firstFunction() 和 secondFunction(),都想让它们在页面加载完毕后得到执行,该怎么办?如果这样:
window.onload = firstFunciton; window.onload = secondFunction;
只有最后一个函数能被执行。由此可得:每个事件处理函数只能绑定一条指令。
但我们可以这样做:
window.onload = function(){ firstFunction(); secondFunction(); }
这是一个解决办法。
不过,还有一个更通的解决方案——额外编写一些代码,但好好处是,有了这些代码,把函数,不管它们有多少,绑定到window.onload事件上的工作就非常简明易行了。
这个函数的的名字是addLoadEvent,它是由Simon Willison编写的。它只有一个参数:打算在页面加载完毕时执行的函数的名字。
下面是addLoadEvent()函数将要完成的操作:
1. 把现有的window.onload事件处理函数的值存入变量oldonload。
2. 如果在这个处理函数上还没有绑定任何函数,就像平时那样把形函数添加给它。
3. 如果在这个处理函数上已经绑定了一些函数,就把形函数追加到现有指令的末尾。
下面是addLoadEvent()函数的代码清单:
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);
以上这篇把多个JavaScript函数绑定到onload事件处理函数上的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com
暂无评论...