关于link和script标签的onload与onreadystatechange事件的支持
研究编写这个专题的心思来源于阳哥分享的javascript加载总结的调研文档。
?
当然这个话题很火也很深,路也很长,开启这个话题,简单地普及一些知识。
?
简单记录,学习一下。
?
开始要说的可能就是onload与onreadystatechange的api支持
?
其实简单地去理解的话,对于外部资源的应用有两个我们head里面常用的标签link和script
?
测试浏览器版本说明
?Opera ?11.51?Chrome?6.0.401.1?FF 3.6.23a. ?link标签?link标签的静态支持?? ?------个人定义的所谓静态其实就是??
?? ?1. IE 6/7/8/9多支持onload,
?? ? ? ?Opera支持onload
?? ? ? ?对于onreadystatechange事件,有两个状态readyState(loading,complete)
?
?? ?2. FF/Safari/Chrome不支持onload,
?? ? ? ?也不支持onreadystatechange
?
?
link标签的动态支持?? ?------个人定义的所谓动态是js去创建link标签?1. ?IE 6/7/8触发onreadystatechange?2. ?IE 9 先触发onreadystatechange 后触发onload?3. ?FF/Safari/Chrome/Opera 触发onload
?script的动态支持ie下的预加载window.onload = function(){ var script = document.createElement("script"); script.setAttribute("type","text/javascript"); script.onreadystatechange = function(){ if(this.readyState == 'loaded'){ alert("preload"); document.getElementsByTagName("head")[0].appendChild(script); }else if(this.readyState == "complete"){ this.onreadystatechange = null; } } script.src="****jquery.min.js?_="+(new Date()).getTime();}?????
1 楼 Hafeyang 2011-10-17 恩。不错。 2 楼 zhangyaochun 2011-10-18 Hafeyang 写道恩。不错。
感谢来访博客,多多提意见,谢谢