<html>
<script> var u=0;</script>
<script defer> u=1;alert("defer1:"+u)</script>
<script defer> u=2;alert("defer2:"+u)</script>
<script> window.onload = function (){
alert("window.onload:"+u)
}
</script><body>
</body>
</html>
我执行的结果是:FF和chrome顺序相同都是defer1->defer2->window.onload window.onload输出u是2
IE8:defer顺序不确定,window.onload 最后,u的值总是2.本人菜鸟,请大家分析一下,新人分数少,请见谅。
<script> var u=0;</script>
<script defer> u=1;alert("defer1:"+u)</script>
<script defer> u=2;alert("defer2:"+u)</script>
<script> window.onload = function (){
alert("window.onload:"+u)
}
</script><body>
</body>
</html>
我执行的结果是:FF和chrome顺序相同都是defer1->defer2->window.onload window.onload输出u是2
IE8:defer顺序不确定,window.onload 最后,u的值总是2.本人菜鸟,请大家分析一下,新人分数少,请见谅。
其实主要问题是defer顺序不管如何,为什么最后onload的时候u的值都是2!
defer不要用他就这么简单其他不说 不用他你就没办法控制你的js加载顺序了吗?
这个问题是无意间看到http://topic.csdn.net/t/20060419/13/4697838.html#r_achor,然后自己试验发现的。
只是很奇怪为什么defer不论顺序如何(多刷几次浏览器发现顺序不同),u的值总是2.