JS不同加载方式下的window.onload
作者:zishu 来源:zishu博客 时间:2009-05-21 18:09:00
window.onload 是页面全部加载完成,包括图片、CSS、JavaScript等。但加载JavaScript的方法有很多种,不同的方式下,window.onload的表现也不一样!
例如,我网页中要使用4个js文件,我分别用以下方法加载:
1、我用最常用的方法来加载:
<script language="javascript" src="1.js"></script>
<script language="javascript" src="2.js"></script>
<script language="javascript" src="3.js"></script>
<script language="javascript" src="4.js"></script>
window.onload = function() {
//这时无论在ie还是在firefox中,js没有加载完,这里的东西是不会被执行的;
}
2、document.write(''):
document.write('<script language="javascript" src="1.js"><\/script>
<script language="javascript" src="2.js"><\/script>
<script language="javascript" src="3.js"><\/script>
<script language="javascript" src="4.js"><\/script>');
window.onload = function() {
//这时无论在ie还是在firefox中,js没有加载完,这里的东西是不会被执行的;
}
3、用非阻塞方式加载:
function addJs(path){
var _js = document.createElement('script');
_js.src = path;
document.getElementsByTagName('head')[0].appendChild(_js);
return;
}
addJs('1.js');
addJs('2.js');
addJs('3.js');
addJs('4.js');
window.onload = function() {
//这时ie不会管上边3个JS加载完与否,都会执行这里的内容的;
//这时firefox必须等到上边3个js加载完后才执行这里的内容的;
}
附件记录一下: