JavaScript高級程序設計(第3版)第二章讀書筆記 -开发者知识库

JavaScript高級程序設計(第3版)第二章讀書筆記 -开发者知识库,第1张

第二章在HTML中使用JavaScript

1.        HTML4.01為<script>定義了6個屬性:async(異步加載,僅對外部文件有效)、charset、defer(腳本可以延遲到文檔完全被解析和顯示之后再執行)、language(已廢棄)、src、type(可看成language的替代屬性,表示編寫代碼使用的腳本語言的內容類型,即MIME類型,一般寫成type=”text/javascript”)。

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

3.        <script>與<img>元素相似,它的src屬性可以指向當前HTML頁面所在域之外的某個域中的完整URL。

4.        無論如何包含代碼,只要不存在defer和async屬性,瀏覽器都會按照<script>元素在頁面中出現的先后順序的對它們一次進行解析。

5.        為了避免<head>元素中有過多JavaScript代碼,導致瀏覽器在呈現頁面時出現明顯的而延遲,瀏覽器窗口出現空白的情況,現代Web應用程序一般都把全部JavaScript引用放在<body>元素中頁面內容的后面。

6.        標有defer屬性的<script>標簽,其包含的腳本告訴瀏覽器立即下載,將延遲到瀏覽器遇到</html>標簽后再執行。現實中,延遲腳本並不一定會按照順序執行,也不一定會在DOMContentLoaded事件觸發前執行,因此最后只包含一個延遲腳本。

7.        標有async屬性的<script>標簽,告訴瀏覽器立即下載文件,但並不保證按照指定它們的先后順序執行。異步腳本一定會在頁面的load事件前執行,但不確定在DOMContentLoaded事件觸發之前或是之后執行。

8.        外部文件比嵌入JavaScript代碼的優點是:可維護性、可緩存(瀏覽器能夠根據具體的設置緩存鏈接的所有外部JavaScript文件,如果兩個頁面使用同一個文件,那么這個文件只需要下載一次)、適應未來。

9.        IE5.5引入了文檔模式的概念,此概念是通過使用文檔類型(doctype)切換實現的。最初的文檔模式是:混雜模式和標准模式。這兩種模式主要影響CSS內容的呈現,某些情況下也會影響到avaScript的解釋執行。之后,IE又提出了准標准模式。如果在文檔開始出沒有發現文檔類型聲明,則所有瀏覽器都會默認開啟混雜模式,但混雜模式不值得推薦,因為不同瀏覽器在這種模式下的行為差異非常大,如果不使用某些hack技術,跨瀏覽器的行為根本就沒有一致性可言。

10.    CSS Hack技術是通過不同瀏覽器自身所帶有的特殊標識符以及CSS中優先級的機制來實現不同瀏覽器里CSS樣式兼容性的問題。CSS Hack三種實現方式:CSS類內部hack、CSS選擇器hack、HTML頭部的hack。

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复