在html中使用window.onload和onload的區別


在html頁面中某段js中調用了window.onload = function test1(){},同時在頁面上又有<body onlocad="test2();">語句,
這將會導致window.onload事件覆蓋body onload事件,導致body onload事件無效.

解決方法:
第一:attachEven給onload添加所需運行的函數
if(document.all){
  window.attachEvent('onload',FuncName)
}else{
  window.addEventListener('load',FuncName,false);
}
第二:把兩個初始化函數再組成一個新的函數
function init(){}
function myfun(){}
function myinit(){
  init();
  myfun();
}
window.onload=myinit;
第三:對兩個函數進行判斷加載方式
function addLoadEvent(func){
  var oldonload=window.onload;
  if(typeof.window.onload!='function'){
    window.onload=func;
  }else{
    window.onload=function(){
    oldonload();
    func();
  }
}
}
//添加要加載執行的事件:
addLoadEvent(aaa);
addLoadEvent(bbb);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM