window.onload添加多个函数的方法

网页加载完毕时会触发一个onload事件,这个事件与window对象相关联

现在有两个函数a1、a2需要在页面加载时得到执行:

function a1(){

......

}

 

function a2(){

......

}

 

第一种方法:

逐一绑定到onload事件上。

window.onload = a1;

window.onload = a2;

但是每个事件处理函数只能绑定一条指令,所以a2会取代a1。

 

那么,

第二种方法:

使用一个匿名函数来容纳a1、a2函数

window.onload = function(){

a1();

a2();

}

但是如果执行的函数过多扩展性不太好

 

第三种方法:

一个弹性的解决方法,需要额外写一个函数绑定事件

 

  1.  
    function addLoadEvent(func) {
  2.  
    //将已绑定的onload函数赋值给一个临时函数变量
  3.  
    var oldonload = window.onload;
  4.  
    //判断是否已有函数绑定
  5.  
    if (typeof oldonload != 'function') {
  6.  
    window.onload = func;
  7.  
    } else {
  8.  
    window.onload = function() {
  9.  
    oldonload();
  10.  
    fun();
  11.  
    }
  12.  
    }
  13.  
    }

使用方式:

 

addLoadEvent(a1);

addLoadEvent(a2);

posted @ 2020-08-02 09:59  MamBa_20  阅读(550)  评论(0)    收藏  举报