window.onload同时执行多个函数的解决方法

 

这个老问题了,也是JavaScript中很多时候都要用到的。现在就把解决方案给总结一下。

1.最简单的调用方式
直接写到html的body标签里面,如下示例:
程序代码 程序代码<html>
   <body onload="function()">
   </body>
</html>

2.在JavaScript语句里调用
程序代码 程序代码<script>
function f1(){...}
window.onload=f1;
</script>

3.同时调用多个函数(body方式)
程序代码 程序代码<html>
   <body onload="function1();function2();function3();">
   </body>
</html>

4.在JavaScript语句中同时调用多个函数
程序代码 程序代码<script>
function f1(){...}
function f2(){...}
function f3(){...}
function f4(){...}
window.onload=function(){
f1();
f2();
f3();
f4();
}
</script>

这种调用方式可以用于不太复杂的JavaScript程序中,如果程序函数很多,逻辑比较复杂,可以考虑用另外一种方式。


5.自定义函数式多次调用
程序代码 程序代码<script>
function f1(){...}
function f2(){...}
function f3(){...}
function f4(){...}
//onload事件侦听函数
function addLoadEvent(func){
var oldonload=window.onload;
if(typeof window.onload!="function"){window.onload=func;}else{window.onload=function(){oldonload();func();}};
}
//调用方式
addLoadEvent(f1);
addLoadEvent(f2);
addLoadEvent(f3);
addLoadEvent(f4);
</script>
这种方式调用比较方便,逻辑清晰。

但要注意的问题是,不可以同时混合运用两种调用方式,因为onload事件只有一次。
posted @ 2013-08-06 15:52  金虹巴巴  阅读(7107)  评论(0编辑  收藏  举报