課程
/前端開發
/JavaScript
/JavaScript入門篇
<script><script>放在<head></head> 和<body></body>有什么區別
2015-05-31
源自:JavaScript入門篇 3-4
正在回答
一、區別瀏覽器解析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做為一名Web工程師的必備技術,本教程讓您快速入門
3 回答<script>放在head內和body內有什么區別
4 回答放在head和body的區別
1 回答script標簽寫在head里面和body里面有什么區別呢?
3 回答在head和body中加入script有什么不同?
4 回答script到底應該放在head還是body里面?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-08-12
一、區別
瀏覽器解析html是從上到下的。
如果把javascript放在head里的話,則先被解析,但這時候body還沒有解析,所以會返回空值。一般都會綁定一個監聽,當全部的html文檔解析完之后,再執行代碼:
? windows.onload=function(){
? ? ? //這里放入執行代碼
? }
說明:
放在head中的JS代碼會在頁面加載完成之前就讀取,而放在body中的JS代碼,會在整個頁面加載完成之后讀取。
這就說明了,如果我們想定義一個全局對象,而這個對象是頁面中的某個按鈕時,我們必須將其放入body中,道理很明顯:如果放入head,那當你定義的時候,那個按鈕都沒有被加載,可能獲得的是一個undefind。
2015-05-31
放在body最后面優先加載body里的內容,再加載執行腳本。
放在head先加載執行腳本再加載body里的內容。
現在流行放在后面,但有些特殊的如html5shiv必須放在前面。
2015-05-31
瀏覽器會先讀取執行head的script后再讀取body里面的script