打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
向window.load添加多个函数
2007-09-26 10:28

向window.load添加多个函数

方法1.

很多种方法,总的来说有两种类型:

1 用DOM提供的绑定事件的方法来作,比如:
[html]
<script type="text/javascript">
function attach(o,e,f){
   if (document.attachEvent)
     o.attachEvent("on"+e,f);
   else if (document.addEventListener)
     o.addEventListener(e,f);
}
attach(window,"load",function(){alert('111')})
attach(window,"load",function(){alert('222')})
</script>
[/html]

不过这种方式的绑定有点小问题……因为你没法确认顺序……

还有一种,就是直接将原来的方法作为另一个函数来引用,如:
[html]
<script type="text/javascript">
function myload(f){
   if (window.onload){
     var o   = window.onload ;
     window.onload = function(){f();o();}//顺序可调
   }
   else
     window.onload   = f;
}
myload(function(){alert('111')})
myload(function(){alert('222')})
</script>
[/html]

方法2.

[code]
window.$asfman=new Array();
window.$load=function(func,args) {
    window.$asfman[window.$asfman.length]=[func,(args)?args:""];
   }
window.onload=function() {
   for(var i=0;i<window.$asfman.length;i++) {
    var func=window.$asfman[i][0];
    func(window.$asfman[i][1];
     }
   }
[/code]
[html]
<script>
window.$asfman=new Array();
window.$load=function(func,args) {
    window.$asfman[window.$asfman.length]=[func,(args)?args:""];
   }
window.onload=function() {
   for(var i=0;i<window.$asfman.length;i++) {
    var func=window.$asfman[i][0];
    func(window.$asfman[i][1]);
     }
   }
function a(x){alert(x)}
function b(y){alert(y)}
window.$load(a,"a");
window.$load(b,"b");
</script>
[/html]

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
javascript中window.onload和body onload冲突的解决方法
页面加载后触发函数
自定义addLoadEvent函数为body.onload事件绑定多个函数
window.load 
JS:window.onload的使用
JScript中的事件函数
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服