DOM(Document Object Model,文檔對象模型)是一種基于對象的文檔結(jié)構(gòu)表示方式,它定義了瀏覽器如何將 HTML 或 XML 文檔轉(zhuǎn)換為一個(gè)樹形結(jié)構(gòu),以便于程序?qū)ζ溥M(jìn)行訪問和操作。在 DOM 樹中,文檔的每個(gè)元素、屬性、文本都被表示為一個(gè)節(jié)點(diǎn)對象,開發(fā)者可以通過 JavaScript 等編程語言來操作這些節(jié)點(diǎn)對象,實(shí)現(xiàn)動(dòng)態(tài)地更新和改變網(wǎng)頁的內(nèi)容、樣式和行為。
DOM 樹的根節(jié)點(diǎn)是 document 對象,它是整個(gè)文檔的入口點(diǎn)。通過 文檔DOM 標(biāo)準(zhǔn)規(guī)定了節(jié)點(diǎn)對象的接口和屬性,每種節(jié)點(diǎn)對象都有對應(yīng)的接口和屬性。例如,元素節(jié)點(diǎn)對象具有 tagName、id、className、style 等屬性,以及 getAttribute()、setAttribute()、appendChild()、removeChild() 等方法。
由于 DOM 提供了對文檔的樹形結(jié)構(gòu)的完整訪問能力,因此可以使用 DOM 對象來實(shí)現(xiàn)動(dòng)態(tài)的網(wǎng)頁效果和交互,例如增加、刪除、移動(dòng)頁面元素,改變樣式,響應(yīng)用戶的事件等。通常,通過 JavaScript 等客戶端腳本語言來操作 DOM 樹,實(shí)現(xiàn)交互式網(wǎng)頁的效果。