第二章 在HTML中使用JavaScript

來源:互聯網
上載者:User

標籤:

<script>元素

  1. async:可選 表示應該立即下載指令碼,但不應妨礙頁面中的其他動作,比如下載其他資源或等待載入其他指令碼。只對外部指令碼有效。
  2. charset:可選 通過src指定代碼的字元集,大多數瀏覽器會忽略它的值,很少人用。
  3. defer:可選 表示指令碼可以延遲到文檔完全被解析和顯示之後再執行。只對外部指令檔有效。
  4. language 已廢棄
  5. src 可選 表示包含要執行的外部檔案
  6. type: 可選表示編寫代碼使用的指令碼語言的內容類型也叫MIME類型,預設為text/javascript
包含在<script>中的JavaScript代碼將被從上至下依次執行解釋,就拿前面這個例子來說,解譯器會解釋一個函數的定義,然後將該定義儲存在自己的環境當中。在解譯器對<script>元素內容的所有代碼求值完畢以前,頁面中的其餘內容都不會被瀏覽器載入或顯示。 帶有src屬性的<script>元素不應該在其<script>和</script>之間再包含額外的JavaScript代碼,如果包含了嵌入的代碼,則只會下載並執行外部指令檔,嵌入的代碼會被忽略。 只要不包含defer和async屬性,瀏覽器都會按照<script>元素在頁面中出現的先後順序對他們依次進行解析。 defer="defer" 告訴瀏覽器立即下載該檔案,但會延遲到瀏覽器遇到</html>標籤後再執行。延遲指令碼會按順序執行 <script type="text/javascript" async src="example1.js"></script><script type="text/javascript" async src="example2.js"></script>第二個指令檔可能會在第一個指令檔之前執行。因此,確保兩者之間互不依賴非常重要,指定async屬性的目的是不讓頁面等待兩個指令碼下載和執行,從而非同步載入頁面其他內容,因此,建議非同步指令碼不要在載入期間修改DOM。非同步指令碼一定會在頁面的load事件前執行,但可能會在DOMContentLoaded事件觸發之前或之後執行。 在XHTML中的用法<script>    //<![CDATA[     //]]>
</script> <noscript></noscript>當瀏覽器不支援指令碼或指令碼被禁用的時候顯示 總結:
    1. 在包含外部JavaScript檔案時,必須將src屬性設定為指向相應檔案的URL。而這個檔案既可以是一個伺服器上的檔案,也可以是其他域中的檔案。
    2. 所有<script>會按照他們在頁面中出現的先後順序依次被解析。在不使用defer和async屬性的情況下,只有解析完前面的<script>元素中的代碼後,才會開始解析後面<script>元素中的代碼。
    3. 由於瀏覽器會先解析前面不使用defer的<script>代碼,然後再解析後面的內容,所以,應該把<script>元素放在最後,即</body>的前面。
    4. 使用defer可以讓指令碼在文檔完全呈現之後再執行。延遲指令碼總是按照指定他們的順序執行。
    5. 使用async屬性可以表示當前指令碼不必等待其他指令碼,也不必阻塞文檔呈現。不能保證非同步指令碼按照它們在頁面中的出現的順序執行。

第二章 在HTML中使用JavaScript

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.