JavaScript DOM编程——共享onload事件

  • window.onload

  • 网页加载完毕时可以触发一个onload事件,如window.onload = function 表示网页加载完毕就执行function事件;

  • 多个事件绑定到onload上,只有最后一个会被实际执行:
    window.onload = func1;
    window.onload = func2;
    此时func2会取代func1,只有func2被执行。

  • 解决办法

1.匿名函数: 适用于需要绑定的函数不是很多的场合。

window.onload = function(){
   func1();
   func2();
}

2.额外编写代码: 函数名为addLoadEvent,弹性最佳,不管在页面加载时想要执行多少函数都可以应付自如,由Simon Willison(详见http://simon.incutio.com)编写。
下面是addLoadEvent函数将要完成的操作:

  • 把现有的window.onload实际处理函数的值存入变量oldonload。
  • 如果在这个处理函数上还没有绑定任何函数,就像平时那样把新函数添加给它。
  • 如果在这个处理函数上已经绑定了一些函数,就把新函数追加到现有指令末尾。
function addLoadEvent(func){
   var oldonload = window.onload;
   if (typeof window.onload != "function"){
   	window.onload = func;
   }
   else{
   	window.onload = function(){
   		oldonload();
   		func();
   	}
   }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值