好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

IE6Scriptdefer的奇怪表现_html/css_WEB-ITnose

when load the following html file in IE6, the result is "". It's strange.
If load in opera, chrome, firefox, It's OK.

Anyone knows why?

___________________________________________________________________







para a



document.write('

');
document.write('javascript code 1');
document.write('

');

para b



document.write('

');
document.write('javascript code 2');
document.write('

');

para c



document.write('

');
document.write('javascript code 3');
document.write('

');



回复讨论(解决方案)

有什么奇怪的,defer只有ie支持
相当于window.onload
当页面加载完毕后,执行那段代码。document.write会打开一个新文档,把前一次的文档给清空了


因为其它浏览器不认得defer所以显示正常了

defer是微软公司自己的属性,其他浏览器忽略了,这个属性的功能是延迟脚本的加载,其他浏览器相对应的属性async:带有async或者defer的script都会立刻下载并不阻塞页面解析,而且都提供一个可选的onload事件处理, 在script下载完成后调用,用于做一些和此script相关的初始化工作.它们的不同之处在于script执行的 时机.带有async的script,一旦下载完成就开始执行(当然是在window的onload之前).这意味着这些script 可能不会按它们出现在页面中的顺序来执行,如果你的脚本互相依赖并和执行顺序相关,就有很大的可能出问题, 例如变量或者函数未定义之类的错误. 而对于带有defer的script,它们会确保按在页面中出现的顺序来执行,它们执行的时机是在页面解析完后,但在 DOMContentLoaded事件之前

查看更多关于IE6Scriptdefer的奇怪表现_html/css_WEB-ITnose的详细内容...

  阅读:32次