首页 > 一个HTML文件引入多个JS文件onload的问题

一个HTML文件引入多个JS文件onload的问题

在用canvas些一个游戏,用MVC的设计模式,把js文件分成了3个,分别代表M,V,C。但是在执行过程中,三个文件都要在window.onload的时候执行。但是window.onload在一个html文件中只能有一个存在。当然,在一个js文件中我知道可以这样做:

window.onload=function(){
    funtion1(){};
    funtion2(){};
}

但是像这样的多个JS文件,而且多个js文件还有关联的情况下怎么解决?


一般我们这样子添加回调:

btn.onclick = func;

但是如果添加多个回调并且顺序执行肯定就不能这样了,因为这样后面的会覆盖前面的。
于是:

//element.addEventListener(type,listener,useCapture);
btn.addEventListener("click", func1, false);
btn.addEventListener("click", func2, false);
btn.addEventListener("click", func3, false);

执行顺序为func1->func2->func3。
需要注意attachEvent是IE自己的方法,addEventListener是w3c标准的东西。


入口只有一个就行了。重新整理一下逻辑吧
另外,可以看一下requirejs


既然是用canvas些一个游戏,那就肯定支持window.addEventListener


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

jQuery
【热门文章】
【热门文章】