摘要:簡單來說,節點作為樹結構中的連接點,最終構成了完整的樹結構。節點樹結構通過節點概念,我們可以將原本的樹結構改成節點樹結構進行表示。節點之間的關系中的表示模型,也可以用來表示節點樹結構中節點之間的關系。值得注意的是和元素并不是兄弟關系。
DOM 樹結構
DOM 之所以可以訪問和更新 HTML 頁面中的內容、結構和樣式,是因為 DOM 將 HTML 頁面解析為一個 樹結構。
例如下面這段代碼是一個簡單的 HTML 頁面源代碼:
示例頁面 這是一個示例頁面
這是一個段落內容.
將上面的 HTML 頁面繪制成 DOM 樹結構,如下效果:
通過上面的 DOM 樹結構,我們可以看到,Document 對象是作為 DOM 樹結構的入口。再根據 DOM 樹結構的特點,我們就可以定位到 HTML 頁面中任意一個元素、屬性或文本內容。
瀏覽器加載并運行 HTML 頁面時,會創建 DOM 樹結構這個模型。并且 DOM 樹結構模型會被存儲在瀏覽器的內存中。
什么是節點當 HTML 頁面內容過于龐大和復雜時,生成的 DOM 樹結構就越復雜。進而,瀏覽器加載 HTML 頁面的耗時就越長。
節點(Node)原本是網絡術語,表示網絡中的連接點。一個網絡是由一些節點構成的集合。
在 DOM 樹結構中,節點也是很重要的一個概念。簡單來說,節點作為 DOM 樹結構中的連接點,最終構成了完整的 DOM 樹結構。
DOM 樹結構中的節點在 DOM 樹結構中,主要由以下 4 種節點組成:
節點名稱 | 含義 | 描述 |
---|---|---|
文檔節點 | 表示整個 HTML 頁面(相當于 document 對象) | 當需要訪問任何標簽、屬性或文本時,都可以通過文檔節點進行導航 |
元素節點 | 表示 HTML 頁面中的標簽(即 HTML 頁面的結構) | 當訪問 DOM 樹時,需要從查找元素節點開始 |
屬性節點 | 表示 HTML 頁面中的開始標簽包含的屬性 | |
文本節點 | 表示 HTML 頁面中的標簽所包含的文本內容 |
除了上面 4 種常見的節點類型以外,DOM 樹結構中還具有很多節點類型。
DOM 節點樹結構還有一些節點類型,目前已被廢棄(不再使用)。
通過節點概念,我們可以將原本的 DOM 樹結構改成 DOM 節點樹結構進行表示。
在 DOM 的標準規范中,提供了 Node 對象。該對象主要依靠 DOM 節點樹結構中的常見 4 種節點類型,來訪問和更新 HTML 頁面中的內容。
節點之間的關系關于 Node 對象,我們會在后面的章節中學習。
DOM 中的 M 表示 Model(模型),也可以用來表示 DOM 節點樹結構中節點之間的關系。
在 DOM 節點樹結構中,主要具有以下三層關系。
父級與子級如果我們將 HTML 頁面中某一個元素作為父級的話,那包含在該元素內的第一層所有元素都可以稱為該元素的子級。
例如,我們來看一下下面這個 DOM 節點樹結構:
在上面的 DOM 節點樹結構中, 元素作為父級, 和 元素作為子級。
祖先與后代如果我們將 HTML 頁面中某一個元素作為祖先的話,那包含在該元素內的所有元素(除子級之外的)都可以稱為該元素的后代。
例如,我們來看一下下面這個 DOM 節點樹結構:
在上面的 DOM 節點樹結構中, 元素作為祖先,、
元素作為后代。
兄弟關系具有相同父級元素的兩個或幾個元素之間就是兄弟關系。例如,我們來看一下下面這個 DOM 節點樹結構:
在上面的 DOM 節點樹結構中, 和
值得注意的是:
和 元素并不是兄弟關系。因為它們的父級元素并不是相同元素。
DOM 訪問和更新 HTML 頁面中的內容,主要依靠 DOM 節點樹結構中這三種節點關系完成。
本教程免費開源,任何人都可以免費學習、分享,甚至可以進行修改。但需要注明作者及來源,并且不能用于商業。
本教程采用知識共享署名-非商業性使用-禁止演繹 4.0 國際許可協議進行許可。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/83914.html
摘要:元素之間的關系在元素樹結構中,主要具有以下三層關系。祖先與后代如果我們將頁面中某一個元素作為祖先的話,那包含在該元素內的所有元素除子級之外的都可以稱為該元素的后代。兄弟關系具有相同父級元素的兩個或幾個元素之間就是兄弟關系。 DOM 元素樹結構與 DOM 節點樹結構很相似,區別僅在于是利用節點解析 HTML 元素,還是利用元素解析 HTML 元素。 DOM 樹結構 還記得下面這張圖嗎? ...
摘要:對象的作用樹結構主要是依靠節點進行解析,稱為節點樹結構。對象的繼承鏈關系對象是繼承于對象的,是一個用于接收事件的對象。但需要注明作者及來源,并且不能用于商業。本教程采用知識共享署名非商業性使用禁止演繹國際許可協議進行許可。 DOM 的標準規范中提供了 Node 對象,該對象主要提供了用于解析 DOM 節點樹結構的屬性和方法。 Node 對象的作用 DOM 樹結構主要是依靠節點進行解析,...
摘要:而標準規范中提供了對象,主要是依靠元素樹結構訪問和更新頁面的內容。值得注意的是所有的頁面的元素都是對象,而這個對象又是繼承于對象的。我們可以簡單地理解對象是對象的補充。本教程采用知識共享署名非商業性使用禁止演繹國際許可協議進行許可。 DOM 的標準規范中提供了 Element 對象,該對象提供了 HTML 頁面中所有元素所具有的屬性和方法。 我們都知道 DOM 標準規范中提供了 Nod...
摘要:系列教程是一套免費開源,任何人都可以免費學習分享,甚至可以進行修改。本文是這套系列教程的索引也就是目錄第一回介紹在最開始,我們先來了解是什么的作用,以及瀏覽器的支持是怎么樣的。 《EASYDOM》系列教程是一套免費、開源,任何人都可以免費學習、分享,甚至可以進行修改。但需要注明作者及來源,并且不能用于商業。 本文是這套系列教程的索引(也就是目錄): 第一回 DOM 介紹 在最開始,我...
摘要:對象提供了一系列的屬性和方法用來利用節點樹結構中節點的關系實現遍歷其中的節點。在上述語法結構中,屬性返回指定節點的父元素節點。該屬性獲取一個包含指定節點的所有子節點的集合。值得注意的是及之前版本的瀏覽器中不存在空白節點問題。 Node 對象提供了一系列的屬性和方法用來利用 DOM 節點樹結構中節點的關系實現遍歷其中的節點。 關于節點之間的關系,可以參考《DOM樹結構》一節有關節點之間關...
閱讀 3565·2023-04-25 14:20
閱讀 1179·2021-09-10 10:51
閱讀 1146·2019-08-30 15:53
閱讀 452·2019-08-30 15:43
閱讀 2307·2019-08-30 14:13
閱讀 2785·2019-08-30 12:45
閱讀 1199·2019-08-29 16:18
閱讀 1155·2019-08-29 16:12