本來準(zhǔn)備把 DOM 的接口都總結(jié)一遍,但是我太天真了,DOM 下面的接口太龐大了,總結(jié)起來太費時了,所以只將自己平時沒注意到的以及常用到的知識記下來了,更詳細(xì)的 DOM 還是看 MDN 上的資料吧!
Node 接口
Node 是一個接口,該接口由 DOM 中的所有的節(jié)點類型實現(xiàn),即所有節(jié)點類型(比如最常見的 Element 類型)都繼承自 Node 接口。
本來,節(jié)點類型總共有12種,但是隨著 DOM4 的出現(xiàn),有 5 種節(jié)點類型被棄用。( 詳情看這里 )
Node 接口的很多屬性(比如 childNodes 、lastChild、firstChild、nextSibling、previousSibling)針對的是所有的節(jié)點類型,并不只是元素節(jié)點。
document.body.childNodes;
在瀏覽器控制端輸入上面的代碼,你會看到顯示的結(jié)果不僅僅有元素節(jié)點,還可能有文本節(jié)點、注釋節(jié)點等!
- Node.hasChildNodes(): 檢測一個節(jié)點下面是否包含一個或多個節(jié)點,若是,則返回 true。
- Node.contains(otherNode): 判斷傳入的節(jié)點是否是調(diào)用該方法的節(jié)點的后代節(jié)點。
Document 類型 (文檔節(jié)點)
JavaScript 通過 Document 類型表示文檔。document 對象是 window 對象的一個屬性。
一些 document 對象的屬性:
document.documentElement// 指向 html 元素document.head// 指向 head 元素(HTML 5 新增)