本文主要為大家分享一篇詳談DOM簡介及節點、屬性、查找節點的方法,具有非常好的參考價值,一起跟隨小編過來看看吧,希望對大家有所幫助,希望能幫助到大家。
DOM(Document Object Modle) 操作文檔的程式設計介面
DOM定義了表示和修改文件的方法,不能修改css樣式表,在js中使用DOM方法改變元素的css樣式,實質上是在元素上添加行間樣式。
DOM對象就是宿主對象,用來操作HTML和xml功能對象的集合。 xml——>xhtml——>html4.0——>html5
HTML和xml的區別:除了xml可以自訂標籤外基本上沒區別,xml被json取代了。
document,單獨寫的時候,它代表整個文檔,隱式的寫在html標籤的上一層,html只是文檔中的根標籤。
注意點:BOM、DOM成組的東西都是類別數組,而不是數組。
取得元素的方法:
getElementById();
在IE8以下的瀏覽器不區分id值得大小寫,並且符合元素的name的屬性值。由於後台會修改id值,所以盡量不用或少用id。
getElementsByTagName();標籤名,所有瀏覽器都支援
getElementsByClassName(); IE8及其以下得瀏覽器不支援
getElementsByName(); 在舊版本中,只有能提交請求的標籤的name才生效(form、表單元素、img、iframe)
document.querySelector(); css選擇器,IE7及以下不相容,且不具有即時性。
document.querySelectAll();
節點類型:
元素節點1
屬性節點2
文字(text)節點3 // 文字、空格、回車等都是文字節點
註解(comment)節點8
document節點9
documentfragment 11
# 遍歷節點數:
parentNode 子節點的父節點,最終的parentNode節點是document節點。
childNodes 父節點的所有子節點,元素節點、註解節點、文字節點
firstChild 第一個子節點
lastChild 最後一個子節點
#nextSibling 下一個兄弟節點
previousSibling 前一個兄弟節點
遍歷元素節點數:(除了children節點,其他的都是IE9及以下不相容)
parentElement元素的父元素節點,最終的父元素節點是html元素,document是自成節點。
children 父元素下的元素子節點。
node.childElementCount === node.children.length 目前子節點的元素子節點個數。用children.length。
firstElementChild 第一個元素子節點
lastElementChild 最後一個元素子節點
nextElementSibling、previousElemnetSibling
#節點的四個屬性:
nodeName 除了元素節點,傳回的結果前面都有一個'#',而元素節點傳回大寫形式的標籤名,類型都為唯讀。
nodeValue 只用於文字節點和註解節點,可讀寫。
nodeType 傳回數字,該數字代表對應的節點類型。只讀
attributes 元素節點的屬性集合。
node.hasChildNodes()方法,判斷父節點裡面是否有子節點,回傳結果為布林值。
相關推薦:
以上是DOM簡介及節點、屬性、查找節點的詳細內容。更多資訊請關注PHP中文網其他相關文章!