什麼是DOM? DOM 全名為 Document Object Model 中文翻譯為 文件物件模型,看起來很抽象但其實就是把一份 HTML 文件內的各個標籤,包括文字、圖片等等都定義成物件,而這些物件最終會形成一個 樹狀結構。 我們可以透過Javascript來改變、存取物件上架構。 為何需要DOM呢? 網頁是由瀏覽器負責運行,因此可以知道瀏覽器其實就是一種編譯器負責去編譯我們寫的網頁程式。今天有非常多間公司都在設計瀏覽器,假如沒有先定好一個規則讓各個瀏覽器都必須要按照這個規則去編譯我們的網頁程式的話,工程師就頭痛了,處理一個IE已經夠煩了還要去針對各個瀏覽器去寫出他們的規則,也因此 W3C 出現了, W3C 定義了非常多的網頁規則好讓各大瀏覽器可以按照這些規則去設計瀏覽器,其中 DOM 就是其中的一個定義。 DOM解析 上面有提到DOM是一個樹狀結構,而樹狀結構最重要的就是各個節點(node)。 節點通常可以分成下面四種 1.Document --指的就是這份文件,HTML開端 2.Element --指的就是標籤 EX:<div>、<p>等各種HTML Tag 3.text --指的就是文字 4.Attribute --指的就是屬性 EX:class、href DOM階層關係圖 1.父子關係(Parent and Child) 上下層節點,上層為 Parent Node ,下層為 Child Node 。 2.兄弟關係 同一層節點,彼此間只有 Previous 以及 Next 兩種 圖片來源-How To Traverse the DOM 備註:上述內容引用自IT邦幫忙 Day03-深入理解網頁架構:DOM 實務上應用中,DOM樹主要有兩項功能 1.存取元件 EX:getElementById( )、querySelector( )、 queryselectorAll( )、parentNode等 2.操作元件(變更元件) EX:innerHTML( )、setAttribute( )、getAttri