DOM,全稱“Document Object Model(文檔對象模型)”,它是由W3C組織定義的一個標准。
很多書籍一上來就大篇幅地展開說明DOM的歷史和定義,看了老半天也不知道DOM是什麼鬼。在這裡,關於DOM的風流逸事就不展開了,免得初學者看得一頭霧水,也浪費時間。
在前端開發時,我們往往需要在頁面某個地方添加一個元素或者刪除元素,這種添加元素、刪除元素的操作就是通過DOM來實現的。
說白了,DOM就是一個接口,我們可以通過DOM來操作頁面中各種元素,例如添加元素、刪除元素、替換元素等。這下大家就懂了吧。
記住,DOM就是文檔對象模型,文檔對象模型就是DOM,很多人在學習DOM的時候看到“文檔對象模型”還不知道是什麼?= =||
DOM采用樹形結構作為分層結構,以樹節點形式表示頁面中各種元素或內容。
舉例:
<html> <head> <title><title> <body> <h1> 學習網</h1> <p> 學習網成立於……</p> </body> </html.>
上面這個HTML文檔使用DOM樹形結構解析為:
在DOM中,每一個元素看成一個節點,而每一個節點就是一個“對象”。也就是我們在操作元素時,把每一個元素節點看成一個對象,然後使用這個對象的屬性和方法進行相關操作。(這句話對理解DOM操作太重要了)。
下面我們介紹幾個關於節點的概念。
在HTML文檔中,html就是根節點。
一個節點之上的節點就是該節點的父節點,例如h1的父節點就是body,body的父節點就是html。
一個節點之下的節點就是該節點的子節點,例如h1就是body的子節點。
如果多個節點在同一層次,並擁有相同的父節點,那麼這幾個節點就是兄弟節點。
例如h1和p就是兄弟節點,因為他們擁有相同的父節點body
這些關於節點的概念很簡單但也非常重要,初學者一定要理解是怎樣一回事。