2.1 <script> 元素
? 向HTML頁(yè)面中插入JavaScript的主要方法俗或,就是使用<script>元素。
? HTML 4.01為<script>定義了下列6個(gè)屬性:(可選)
??? async:立即下載腳本辛慰,不應(yīng)妨礙頁(yè)面中的其他操作,只對(duì)外部腳本文件有效驰弄。
??? charset:通過(guò)src屬性指定的代碼的字符集速客。被大多數(shù)瀏覽器忽略戚篙,很少用溺职。
??? defer:延遲腳本到文檔完全解析和顯示后再執(zhí)行,只對(duì)外部腳本文件有效浪耘。
??? src:表示包含要執(zhí)行代碼的外部文件。
??? type:表示編寫代碼實(shí)用的腳本語(yǔ)言的內(nèi)容類型(MIME類型)七冲,type=text/javascript痛倚。
使用<script>元素的方式有兩種:
? 直接在頁(yè)面中嵌入JavaScript代碼澜躺,只需為<script>指定type屬性,然后將JavaScript代碼直接放在<script>元素內(nèi)部颠区,JavaScript代碼將被從上至下依次解釋;代碼中不能出現(xiàn)"</script>"字符串,需分割為"<\/script>"器贩。
? 通過(guò)<script>元素來(lái)包含外部JavaScript文件朋截,src屬性的值指向外部JavaScript文件的鏈接吧黄,這個(gè)文件可以是與包含它的頁(yè)面位于同一個(gè)服務(wù)器上的文件,也可以是其他任何域中的文件拗慨;外部文件帶有.js擴(kuò)展名。
2.1.1 標(biāo)簽的位置
? 一般將全部JavaScript引用放在<body>元素中頁(yè)面的內(nèi)容后面剧蹂,</body>標(biāo)簽前面烦却。
2.1.2 延遲腳本
? 在<script>元素中設(shè)置defer屬性,立即下載但延遲執(zhí)行其爵,最好只包含一個(gè)延遲腳本。
2.1.3 異步腳本
? async的腳本不保證按照指定它們的先后順序執(zhí)行简烤,因此要確保腳本之間互不依賴。
2.1.4 在XHTML中的用法(跳過(guò))
2.1.5 不推薦使用的語(yǔ)法
? 在不支持JavaScript的瀏覽器中乐埠,將JavaScript代碼包含在一個(gè)HTML的注釋中<!-- -->囚企。
2.2 嵌入代碼與外部文件
? 最好的做法是盡可能使用外部文件來(lái)包含JavaScript代碼。優(yōu)點(diǎn)是:可維護(hù)性龙宏、可緩存、適應(yīng)未來(lái)辆影。
2.3 文檔模式
? 混雜模式、標(biāo)準(zhǔn)模式蛙讥、準(zhǔn)標(biāo)準(zhǔn)模式
<灭衷!DOCTYPE html>//HTML5文檔類型聲明
2.4 <noscript>元素
? 當(dāng)瀏覽器不支持JavaScript時(shí)讓頁(yè)面平穩(wěn)退化,可以包含能夠出現(xiàn)在<body>中的任何HTML元素,<script>除外劈愚。
?
?