文件物件模型

表示HTML、XHTML和XML文档并且与文档中的对象交互的协议

文件物件模型(英語:Document Object Model,縮寫DOM),是W3C組織推薦的處理可延伸標示語言超文件標示語言的標準程式介面。

文件物件模型
在HTML文件中DOM層級的例子
首次出版1998年10月1日,​25年前​(1998-10-01
最新版本DOM4[1]
2015年11月19日,​8年前​(2015-11-19
組織World Wide Web Consortium, WHATWG
基礎標準WHATWG DOM Living Standard
W3C DOM4
縮寫DOM

Document Object Model的歷史可以追溯至1990年代後期微軟與Netscape的「瀏覽器大戰」(browser wars),雙方為了在JavaScriptJScript一決生死,於是大規模的賦予瀏覽器強大的功能。微軟在網頁技術上加入了不少專屬事物,既有VBScriptActiveX、以及微軟自家的DHTML格式等,使不少網頁使用非微軟平台及瀏覽器無法正常顯示。DOM即是當時醞釀出來的傑作。

DOM (Document Object Model) 譯為文件物件模型,是 HTML 和 XML 文件的編程介面。

HTML DOM 定義了訪問和操作 HTML 文件的標準方法。

DOM 以樹結構表達 HTML 文件。

W3C DOM 標準被分為 3 個不同的部分:[2]

  • 核心 DOM - 針對任何結構化文件的標準模型
  • XML DOM - 針對 XML 文件的標準模型
  • HTML DOM - 針對 HTML 文件的標準模型

XML DOM 定義了所有 XML 元素的對象屬性,以及訪問它們的方法

HTML DOM 編輯

簡介 編輯

HTML DOM 是:[3]

  • HTML 的標準對象模型
  • HTML 的標準編程介面
  • W3C 標準

HTML DOM 定義了所有 HTML 元素的對象屬性,以及訪問它們的方法

換言之,HTML DOM 是關於如何取得、修改、添加或刪除 HTML 元素的標準。

DOM方法 編輯

編程介面 編輯

可通過 JavaScript (以及其他程式語言)對 HTML DOM 進行訪問。

所有 HTML 元素被定義為對象,而編程介面則是對象方法和對象屬性。

方法是您能夠執行的動作(比如添加或修改元素)。

屬性是您能夠取得或設置的值(比如節點的名稱或內容)。 一些常用的 HTML DOM 方法:

  • getElementById(id) - 取得帶有指定 id 的節點(元素)
  • appendChild(node) - 插入新的子節點(元素)
  • removeChild(node) - 刪除子節點(元素)

DOM對象 編輯

一些常用的 HTML DOM 屬性:

  • innerHTML - 節點(元素)的文字值
  • parentNode - 節點(元素)的父節點
  • childNodes - 節點(元素)的子節點
  • attributes - 節點(元素)的屬性節點

DOM屬性 編輯

  • nodeType 屬性
  • nodeValue 屬性
  • innerHTML 屬性

標準化 編輯

 
WHATWG DOM

W3C對DOM進行標準化的動作,目前已經推行至第四代。

Level 1 編輯

Level 2 編輯

Level 3 編輯

Level 4 編輯

參考文獻 編輯

  1. ^ All versioning refers to W3C DOM only.
  2. ^ Document Object Model (DOM) Specifications. www.w3.org. [2022-09-29]. (原始內容存檔於2022-06-02). 
  3. ^ JavaScript HTML DOM. www.w3schools.com. [2022-09-29]. (原始內容存檔於2022-10-22) (美國英語). 

外部連結 編輯

參見 編輯

  • SAX:Simple API for XML