转载:http://dancewithnet.com/2007/03/22/order-of-execution-of-javascript-on-web/
document.write()会把输出写入到脚本文档所在的位置,浏览器解析完documemt.write()所在文档内容后,继续解析document.write()输出的内容,然后在继续解析HTML文档。
document.write('<script type="text/javascript" src="test.js"><\/script>');
可以利用HTML解析是解析完一个HTML标签,再执行下一个的原理,把代码拆分来实现
<script type="text/javascript">//<![CDATA[ document.write('<script type="text/javascript" src="test.js"><\/script>'); //]]></script> <script type="text/javascript">//<![CDATA[ document.write('<script type="text/javascript">'); document.write('alert(2);') document.write('alert("我是" + tmpStr);'); document.write('<\/script>'); //]]></script> <script type="text/javascript">//<![CDATA[ alert(3); //]]></script>
利用onload
window.onload = function(){f();f1();f2();} if(document.addEventListener){ window.addEventListener('load',f,false); window.addEventListener('load',f1,false); }else{ window.attachEvent('onload',f); window.attachEvent('onload',f1); }