这是一段javascript代码。初学javascript和dom,说实话我有点不太懂。请教各位详细分析一下。多谢啦。function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

解决方案 »

  1.   

    这个函数是用于给页面添加一个页面加载完之后自动执行的函数
    window.onload属性委托了自动执行的函数(即参数func)这个函数也支持添加多个函数(func)的写法
      

  2.   


    //为文档增加一个事件,该事件在文档完全加载完成后执行。
    function addLoadEvent(func) {
      var oldonload = window.onload;              //获得文档的onload事件
      if (typeof window.onload != 'function') {   //如果用户没有定义onload事件
        window.onload = func;                      //将func绑定到onload
      } else {                                    //如果用户已经定义了onload事件
        window.onload = function() {              //重新定义onload事件
          oldonload();                            //先执行原来的事件
          func();                                 //再执行func
        }
      }
    }
      

  3.   


    先谢谢两位的帮助。尤其是xmily的解答。我觉得我理解的不够透彻。希望得到纠正。下面是一些疑问:var oldonload = window.onload;    //网上说window.onload是"窗口加载"。问:按xmily的说法就是onload事件赋给oldonload变量?
    if(typeof window.load != 'function')//判断window.load事件的类型,如果它不是'函数'(function),则...  问:window.load应该是什么类型?
    window.load=func    //把func的值赋给window.load, 问:这里的func指的是什么?
    else               //如果window.load的类型是function
    window.onload = function() {    //问:这句怎么理解?
    注:typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."多谢大家的解答啊。