HTML < script> 標簽
<script> 標簽通常放置在一個 HTML 網頁的頭部標簽 <head> 標簽內,用于鏈接外部 JavaScript 文件的外部資源標簽。
實例
通過 JavaScript 輸出 "Hello world":
<script>
document.write("Hello World!")
</script>
document.write("Hello World!")
</script>
瀏覽器支持
所有主流瀏覽器都支持 <script> 標簽。
標簽定義及使用說明
<script> 標簽用于定義客戶端腳本,比如 JavaScript。
<script> 元素既可包含腳本語句,也可以通過 "src" 屬性指向外部腳本文件。
JavaScript 通常用于圖像操作、表單驗證以及動態內容更改。
提示和注釋
注釋:如果使用 "src" 屬性,則 <script> 元素必須是空的。
注釋:假如 <script> 元素內部的代碼沒有位于某個函數中,那么這些代碼會在頁面被加載時被立即執行。<frameset> 標簽之后的腳本會被忽略。
提示:請參閱 <noscript> 元素,對于那些在瀏覽器中禁用腳本或者其瀏覽器不支持客戶端腳本的用戶來說,該元素非常有用。
注釋:有多種執行外部腳本的方法:
- 如果 async="async":腳本相對于頁面的其余部分異步地執行(當頁面繼續進行解析時,腳本將被執行)
- 如果不使用 async 且 defer="defer":腳本將在頁面完成解析時執行
- 如果既不使用 async 也不使用 defer:在瀏覽器繼續解析頁面之前,立即讀取并執行腳本
HTML 4.01 與 HTML5之間的差異
在 HTML 4 中,"type" 屬性是必需的,但在 HTML5 中是可選的。
"async" 屬性是 HTML5 中的新屬性。
HTML5 中不再支持 HTML 4.01 中的某些屬性:"xml:space"。
HTML 與 XHTML 之間的差異
在 XHTML 中,腳本中的內容類型聲明為 #PCDATA(代替 CDATA),就是說會對實體進行解析。
這意味著,在 XHTML 中,應該編碼所有特殊的字符,或者把所有內容嵌套在 CDATA 部分中:
<script type="text/javascript">
//<![CDATA[
var i=10;
if (i<5)
{
// some code
}
//]]>
</script>
//<![CDATA[
var i=10;
if (i<5)
{
// some code
}
//]]>
</script>
屬性
New :HTML5 中的新屬性。
屬性 | 值 | 描述 |
---|---|---|
asyncNew | async | 規定異步執行腳本(僅適用于外部腳本)。 |
charset | charset | 規定在腳本中使用的字符編碼(僅適用于外部腳本)。 |
defer | defer | 規定當頁面已完成解析后,執行腳本(僅適用于外部腳本)。 |
src | URL | 規定外部腳本的 URL。 |
type | MIME-type | 規定腳本的 MIME 類型。 |
xml:space | preserve | HTML5 不支持。規定是否保留代碼中的空白。 |
全局屬性
<script> 標簽支持 HTML 的全局屬性。
相關文章
HTML 教程:HTML 腳本
HTML DOM 參考手冊:HTML DOM Script 對象