JavaScript高級程序設計(第2章 在HTML中使用JavaScript)

第2章 在HTML中使用JavaScript


2.1 P10 <script>元素

<script>元素用來向HTML中插入JavaScript。它有以下5個常用屬性:
1、type(類型):可選,表示編寫代碼使用的腳本語言的內容類型(也成爲MIME類型),默認值和常規值都爲text/javascript ,因此可以不寫;
2、src(源):可選,表示包含要執行代碼的外部文件地址;
3、async:可選,表示立即下載腳本,但不妨礙頁面中的其他操作,只對外部腳本文件有效,在HTML中爲布爾屬性不用填值,但在XHTML中要寫爲async=“async”
4、defer:可選,表示腳本可以立即下載,但延遲到文檔完全被解析和顯示之後再執行,只對外部腳本文件有效,值:defer
5、charset:可選,表示通過src屬性制定的代碼的字符集,較少用。

兩種方法嵌入JavaScript。
方法一:嵌入式
直接在文檔里加入JavaScript代碼,由於瀏覽器會自上而下讀取並執行代碼,所以一般放在<body>元素的最底部(</body>關閉標籤前)。
如:
<body>
...
    <script>
    ...
    </script>
</body>
當然也可以放在<body>元素的任意其餘位置,但是需要在JavaScript代碼第一行加入window.onload(){},告訴瀏覽器在頁面加載完後再執行JavaScript代碼。
如:
<body>
    <script>
    window.onload(){
    ...}
    </script>
...
</body>

注意:代碼中的任何地方都不能出現字符串“</script>”,瀏覽器會誤認爲是結束標籤。不過可以通過加一個"\"轉義字符,“<\/script>”。

方法二:外部引入式
通過src屬性引入外部JavaScript文件,放在<head>標籤裏或者</body>標籤前(推薦),瀏覽器在解析時也會停止頁面的處理。
如:
<script type="text/javascript" src="example.js"></script> 
開始和結束標籤中間不能再嵌入JS代碼,而外部文件中不需要寫開始和結束標籤。

2.1.2 Page 13 延遲腳本

<script type="text/javascript" src="example.js" defer="defer" ></script>
告訴瀏覽器立即下載,但延遲執行腳本。defer屬性只適用於外部腳本文件,且最好只包含一個延遲腳本,最佳選擇仍是把延遲腳本放在頁面底部。

2.1.3 Page 13 異步腳本

<script type="text/javascript" src="example.js" async ></script>
同樣只適用於外部腳本,但一般用於文檔有幾個外部腳本文件時,告訴瀏覽器同時加載文檔以及腳本文件,但是,兩個腳本文件下載和執行順序無法確定。

2.4 Page 18 <noscript>元素

使用<noscript>元素可以指定在不支持腳本的瀏覽器中顯示的替代內容,其中可以填入出現在 <body>中的除<script>外的任意元素。
如:
<noscript>
    <p>本頁面需要瀏覽器支持(啓用)JavaScript。</p>
</noscript>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章