qq_彦_1
2015-05-31 16:46
<script><script>放在<head></head> 和<body></body>有什么区别
一、区别
浏览器解析html是从上到下的。
如果把javascript放在head里的话,则先被解析,但这时候body还没有解析,所以会返回空值。一般都会绑定一个监听,当全部的html文档解析完之后,再执行代码:
windows.onload=function(){
//这里放入执行代码
}
说明:
放在head中的JS代码会在页面加载完成之前就读取,而放在body中的JS代码,会在整个页面加载完成之后读取。
这就说明了,如果我们想定义一个全局对象,而这个对象是页面中的某个按钮时,我们必须将其放入body中,道理很明显:如果放入head,那当你定义的时候,那个按钮都没有被加载,可能获得的是一个undefind。
放在body最后面优先加载body里的内容,再加载执行脚本。
放在head先加载执行脚本再加载body里的内容。
现在流行放在后面,但有些特殊的如html5shiv必须放在前面。
浏览器会先读取执行head的script后再读取body里面的script
JavaScript入门篇
739816 学习 · 9566 问题
相似问题