Github: https://github.com/SHENLing0628/JavaScriptStudy
歡迎star永部,轉(zhuǎn)載請標(biāo)注來源
1. <script>元素
1.1 <script>屬性
屬性名稱 | 定義 | 備注 |
---|---|---|
async | 可選;應(yīng)立即下載腳本,但不應(yīng)妨礙頁面中其他操作 | 僅對外部腳本文件有效 |
charset | 可選朴摊;通過src屬性指定的代碼的字符集 | |
defer | 可選昔瞧;腳本可以延遲到文檔完全解析和顯示之后再執(zhí)行 | 僅對外部腳本文件有效 |
language | 已廢棄;表示編寫代碼使用的腳本語言 | |
src | 可選仪搔;包含要執(zhí)行代碼的外部文件 | |
type | 必選嫩码;表示編寫代碼使用的腳本語言的內(nèi)容類型 | 常規(guī):text/javascript; 非IE瀏覽器:application/javascript |
1.2 <script>使用方法
-
直接嵌入代碼
<script type="text/javascript"> function foo() { alert('直接嵌入代碼') } </script>
-
引用外部js文件
<script type="text/javascript" src="./example.js"></script>
-
注意:
- 直接嵌入代碼時(shí)狭郑,使用的代碼不能包含
</script>
字符串腹暖。可通過轉(zhuǎn)義字符\解決:alert("<\/script>")
- es6中支持:
<script type="text/javascript" src="./example.js" />
- 只要不存在async和defer屬性翰萨,瀏覽器會(huì)按照<script/>元素在頁面中出現(xiàn)的順序?qū)λ麄円来谓馕?/li>
- 直接嵌入代碼時(shí)狭郑,使用的代碼不能包含
<script/>
標(biāo)簽位置:常規(guī):<head>
中脏答,現(xiàn)代瀏覽器:<body>
中,以加快解析速度
1.3 defer屬性
定義:腳本會(huì)被延遲到亩鬼,整個(gè)頁面都解析后再運(yùn)行(腳本立即下載殖告,但延遲執(zhí)行)
-
樣例:
<script type="text/javascript" src="./example.js" defer="defer"></script>
1.4 async屬性
定義:不讓頁面等待兩個(gè)腳本下載和執(zhí)行,從而異步加載頁面其他內(nèi)容雳锋。故建議異步腳本不要在加載期間修改DOM
備注:async并不保證按指定先后順序執(zhí)行
-
樣例:
<script type="text/javascript" src="./example.js" async></script>
2. <noscript>元素 - 用在不支持JavaScript的瀏覽器中顯示替代內(nèi)容
<noscript>
<p>
本頁面需瀏覽器支持(啟用)JavaScript黄绩。
</p>
</noscript>
備注:瀏覽器支持JavaScript后,則該內(nèi)容隱藏玷过,不顯示
Github: https://github.com/SHENLing0628/JavaScriptStudy
歡迎star爽丹,轉(zhuǎn)載請標(biāo)注來源