window.onload函数用法

平时做项目 经常需要使用window.onload,

但window.onload 不能同时加载多个函数。
比如;

Java代码 复制代码
  1. function t(){   
  2.   alert("t")   
  3. }   
  4. function b(){   
  5.   alert("b")   
  6. }   
  7. window.onload =t ;   
  8. window.onload =b ;  
Java代码 复制代码 收藏代码
  1. function t(){   
  2.   alert("t")   
  3. }   
  4. function b(){   
  5.   alert("b")   
  6. }   
  7. window.onload =t ;   
  8. window.onload =b ;  
function t(){
  alert("t")
}
function b(){
  alert("b")
}
window.onload =t ;
window.onload =b ;



后面会把前面的覆盖。
上面代码只会输出 b ;

解决方法:
程序代码

Java代码 复制代码
  1. window.onload =function() { t();  b(); }  
Java代码 复制代码 收藏代码
  1. window.onload =function() { t();  b(); }  
window.onload =function() { t();  b(); }



今天看书的时候学了一个函数,分享给大家:

程序代码

Java代码 复制代码
  1.     function addLoadEvent(func) {   
  2.   var oldonload = window.onload;   
  3.   if (typeof window.onload != 'function') {   
  4.     window.onload = func;   
  5.   } else {     
  6.     window.onload = function() {   
  7.       oldonload();   
  8.       func();   
  9.     }   
  10.   }   
  11. }  
Java代码 复制代码 收藏代码
  1.     function addLoadEvent(func) {   
  2.   var oldonload = window.onload;   
  3.   if (typeof window.onload != 'function') {   
  4.     window.onload = func;   
  5.   } else {     
  6.     window.onload = function() {   
  7.       oldonload();   
  8.       func();   
  9.     }   
  10.   }   
  11. }  
    function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {  
    window.onload = function() {
      oldonload();
      func();
    }
  }
}



具体用法;

程序代码

Java代码 复制代码
  1. function t(){   
  2. alert("t")   
  3. }   
  4. function b(){   
  5. alert("b")   
  6. }   
  7. function c(){   
  8. alert("c")   
  9. }   
  10.   
  11.     function addLoadEvent(func) {   
  12.   var oldonload = window.onload;   
  13.   if (typeof window.onload != 'function') {   
  14.     window.onload = func;   
  15.   } else {     
  16.     window.onload = function() {   
  17.       oldonload();   
  18.       func();   
  19.     }   
  20.   }   
  21. }   
  22.   
  23.   
  24. addLoadEvent(t);   
  25. addLoadEvent(b);   
  26. addLoadEvent(c);  
Java代码 复制代码 收藏代码
  1. function t(){   
  2. alert("t")   
  3. }   
  4. function b(){   
  5. alert("b")   
  6. }   
  7. function c(){   
  8. alert("c")   
  9. }   
  10.   
  11.     function addLoadEvent(func) {   
  12.   var oldonload = window.onload;   
  13.   if (typeof window.onload != 'function') {   
  14.     window.onload = func;   
  15.   } else {     
  16.     window.onload = function() {   
  17.       oldonload();   
  18.       func();   
  19.     }   
  20.   }   
  21. }   
  22.   
  23.   
  24. addLoadEvent(t);   
  25. addLoadEvent(b);   
  26. addLoadEvent(c);  
function t(){
alert("t")
}
function b(){
alert("b")
}
function c(){
alert("c")
}

    function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {  
    window.onload = function() {
      oldonload();
      func();
    }
  }
}


addLoadEvent(t);
addLoadEvent(b);
addLoadEvent(c);



//等价于  window.onload =function() { t();  b(); c() ;}

原文地址:https://www.cnblogs.com/mount/p/2252299.html