Document 對象
每個載入瀏覽器的 HTML 文檔都會成為 Document 對象。
Document 對象使我們可以從腳本中對 HTML 頁面中的所有元素進行訪問。
提示:Document 對象是 Window 對象的一部分,可通過 window.document 屬性對其進行訪問。
Document 對象描述
HTMLDocument 接口對 DOM Document 接口進行了擴展,定義 HTML 專用的屬性和方法。
很多屬性和方法都是 HTMLCollection 對象(實際上是可以用數組或名稱索引的只讀數組),其中保存了對錨、表單、鏈接以及其他可腳本元素的引用。
這些集合屬性都源自於 0 級 DOM。它們已經被 Document.getElementsByTagName() 所取代,但是仍然常常使用,因為他們很方便。
write() 方法值得注意,在文檔載入和解析的時候,它允許一個腳本向文檔中插入動態生成的內容。
注意,在 1 級 DOM 中,HTMLDocument 定義了一個名為 getElementById() 的非常有用的方法。在 2 級 DOM 中,該方法已經被轉移到了 Document 接口,它現在由 HTMLDocument 繼承而不是由它定義了。
Window 對象
Window 對象表示瀏覽器中打開的窗口。
如果文檔包含框架(frame 或 iframe 標簽),瀏覽器會為 HTML 文檔創建一個 window 對象,並為每個框架創建一個額外的 window 對象。
注釋:沒有應用於 window 對象的公開標准,不過所有瀏覽器都支持該對象。
Window 對象描述
Window 對象表示一個瀏覽器窗口或一個框架。在客戶端 JavaScript 中,Window 對象是全局對象,所有的表達式都在當前的環境中計算。也就是說,要引用當前窗口根本不需要特殊的語法,可以把那個窗口的屬性作為全局變量來使用。例如,可以只寫document,而不必寫 window.document。
同樣,可以把當前窗口對象的方法當作函數來使用,如只寫 alert(),而不必寫 Window.alert()。
除了上面列出的屬性和方法,Window 對象還實現了核心 JavaScript 所定義的所有全局屬性和方法。
Window 對象的 window 屬性和 self 屬性引用的都是它自己。當你想明確地引用當前窗口,而不僅僅是隱式地引用它時,可以使用這兩個屬性。除了這兩個屬性之外,parent 屬性、top 屬性以及 frame[] 數組都引用了與當前 Window 對象相關的其他 Window 對象。