程序員越做經驗越豐富,工作越輕鬆,但是你是否還記得來時的路呢?讓我們一起回顧一下,那些年我們一起學過的js節點知識吧,路漫漫其修遠兮,吾將上下而求索!
根據 DOM,HTML 文檔中的每個成分都是一個節點。
DOM 是這樣規定的:
整個文檔是一個文檔節點
每個 HTML 標籤是一個元素節點
包含在 HTML 元素中的文本是文本節點
每一個 HTML 屬性是一個屬性節點
註釋屬於註釋節點
一、如何獲得節點引用
1.舊的獲取節點引用方式
getElementById()
getElementByTagName()
getElementByName()
劣勢:
浪費內存邏輯性不強
2.通過節點 關係屬性 獲得節點的引用
對象.parentNode 獲得父節點的引用
對象.childNodes 獲得子節點的集合
對象.firstChild 獲得第一個子節點
對象.lastChild 獲得第一個子節點\
對象.nextSibling 獲得下一個兄弟節點的引用
對象.previousSibling 獲得上一個兄弟節點的引用
劣勢:
兼容性不好。
二、節點的信息(屬性)
節點類型 節點名字 節點值
nodeType(數值) nodeName nodeValue
元素節點 1 標籤名 null
屬性節點 2 屬性名 屬性值
文本節點 3 #text 文本
註釋節點 8 #comment 註釋的文字
文檔節點 9 #document null
節點操作:
一、創建節點
1>創建元素節點
document.createElement("元素標籤名");
2>創建屬性節點
document.createAttribute("屬性名");
對象.屬性="屬性值"
對象.setAttribute(屬性名,屬性值)
對象.getAttribute(屬性名,屬性值)
3>創建文本節點
對象.innerHTML="";
document.createTextNode("文本");
二、追加到頁面當中
父對象.appendChild(追加的對象) 插入到最後
父對象.insertBefore(要插入的對象,之前的對象) 插入到最後
三、修改(替換)節點
父對象.replaceChild(要修改的對象,被修改的);
四、刪除節點
父對象.removeChild(刪除的對象)
如果確定要刪除節點,最好也清空內存 對象=null;