> 웹 프론트엔드 > HTML 튜토리얼 > IE6 Script defer 的奇怪表现_html/css_WEB-ITnose

IE6 Script defer 的奇怪表现_html/css_WEB-ITnose

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-21 09:33:25
원래의
913명이 탐색했습니다.

when load the following html file in IE6, the result is "

javascript code 2

". It's strange.
If load in opera, chrome, firefox, It's OK.
 
Anyone knows why?
 
___________________________________________________________________
 
 





 para a 


<script> <br /> document.write('<p>'); <br /> document.write('javascript code 1'); <br /> document.write(''); <br /> </script>

 para b 


<script> <br /> document.write('<p>'); <br /> document.write('javascript code 2'); <br /> document.write(''); <br /> </script>

 para c 


<script> <br /> document.write('<p>'); <br /> document.write('javascript code 3'); <br /> document.write(''); <br /> </script>


回复讨论(解决方案)

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


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

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

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿