HTML中javascript的標籤使用方法詳解

只要一提到把JavaScript放到網頁中,就不得不涉及Web的核心語言——HTML。在當初開發JavaScript的時候,Netscape要解決的一個重要問題就是如何做到讓JavaScript既能與HTML頁面共存,又不影響那些頁面在其他瀏覽器中的呈現效果。經過嘗試、糾錯和爭論,最終的決定就是爲Web增加統一的腳本支持。而Web誕生早期的很多做法也都保留了下來,並被正式納入HTML規範當中。

<script>元素

    向HTML頁面中插入JavaScript的主要方法,就是使用<script>元素。這個元素由Netscape創造並在Netscape Navigator2中首先實現。後來,這個元素被加入到正式的HTML規範中。HTML4.01爲<scripth>定義了下列6個屬性。

  • async:可選。表示應該立即下載腳本,但不應妨礙頁面中的其他操作,比如下載其他資源或等待加載其他腳本。只對外部腳本有效。

  • charset:可選。表示通過src屬性指定的代碼的字符集。由於大多數瀏覽器會忽略它的值,因此這個屬性很少有人用。

  • defer:可選。表示腳本可以延遲到文檔完全被解析和顯示之後再執行。只對外部腳本有效。

  • language:已廢棄。

  • src:可選。表示包含要執行代碼的外部文件。

  • type:可選。可以看成是language的替代屬性;表示編寫代碼使用的腳本語言的內容類型(也稱爲MIME類型)。


    使用<script>元素的方式有兩種:直接在頁面中嵌入JavaScript代碼和包含外部JavaScript文件。

    在使用<script>元素嵌入JavaScript代碼時,只需爲<script>指定type屬性。然後,向下面這樣把javaScript代碼直接放在元素內部即可:

<script type="text/javascript">
    function sayHi(){
        alert("Hi!");
    }
</script>

    包含在<script>元素內部的JavaScript代碼將被從上至下依次解釋。就拿前面這個例子來說,解釋器會解釋一個函數的定義,然後將該定義保存在自己的環境當中。當解釋器對<script>元素內部的所有代碼求值完畢前,頁面中的其餘內容都不會被瀏覽器加載或顯示。

    

    如果要通過<script>元素來包含外部JavaScript文件,那麼src屬性就是必需的。這個屬性的值是一個指向外部javascript文件的鏈接,例如:

<script type="text/javascript" src="example.js"></script>

在這個例子中,外部文件example.js將被加載到當前頁面中。外部文件只須包含通常要放在開始的<script>和結束的</script>中間的那些javascript代碼即可。與解析嵌入式javascript代碼一樣,在解析外部javascript文件(包括下載該文件)時,頁面的處理也會暫時停止。如果是在XHTML文檔中,也可以省略前面示例代碼中結束的</script>標籤,例如:

<script type="text/javascript" src="example.js" />

按照慣例,外部javascript文件帶有.js擴展名。但這個擴展名不是必需的,因爲瀏覽器不會檢查包含javascript的文件的擴展名。這樣一來,使用JSP、PHP或其他服務器端語言動態生成javascript代碼也就成爲了可能。但是,服務器通常還是需要看擴展名決定爲響應應用哪種MIME類型。如果不適用.js擴展名,請確保服務器能反應會正確的MIME類型。

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