<< Auto refreshing properties from property files | Entelligentsia Blog | 首页 | 浅谈Linux内存管理机制 - 51CTO.COM >>

js window.onload 加载多个函数和追加函数 - 唔愛吃蘋果 - 博客园

window.onload 不能同时加载多个函数,后面会把前面的覆盖,解决办法:

 

 function addLoadEvent(func) {
  
var oldonload = window.onload;//得到上一个onload事件的函数
  if (typeof window.onload != 'function') {//判断类型是否为'function',注意typeof返回的是字符串
    window.onload = func;
  } 
else {  
    window.onload 
= function() {
      oldonload();
//调用之前覆盖的onload事件的函数---->由于我对js了解不多,这里我暂时理解为通过覆盖onload事件的函数来实现加载多个函数
      func();//调用当前事件函数
    }
  }
}

//(完整示例)使用如下:

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() ;}

阅读全文……




发表评论 发送引用通报