一、元素節點
複製程式碼
liElements[i].childNodes[0].nodeValue="南京";
alert(liElements[i].childNodes[0].nodeValue);
//另一種讀取方法
alert(liElements[i].firstChild.nodeName);
alert(liElements[i].firstChild.nodeType);
alert(liElements[i]Child.nodeType);
alert(liElements[i]Child.nodeType);
alert(liElements[i].firstld.no.fir)>
四、替換節點
replaceChild()
把一個給定父元素裡的一個子節點替換為另外一個子節點
var reference = element.replaceChild(newChild,oldChild);
複製程式碼
程式碼如下:
五、找出屬性節點
getAttribute()
傳回給定元素的一個給定屬性節點的值
var attributeValue = element.getAttribute(attributeName);
給定屬性的名字必須以字串的形式傳遞給該方法。
給定屬性的值將以字串的形式傳回,如果給定屬性不存在,getAttribute() 將傳回一個空字串.
透過屬性取得屬性節點
getAttributeNode(屬性的名稱) --Node
setAttribute()將給定元素節點新增一個新的屬性值或改變它的現有屬性的值。 element.setAttribute(attributeName,attributeValue);
如果這個屬性已經存在,它的值將被刷新;
如果不存在,setAttribute()方法將先創建它再為其賦值。
var bjElement=document.getElementById("bj");
//設定屬性值
var nameValue=bjElement.getAttribute("name");
alert("nameValue " nameValue);
七、建立新元素節點
createElement()
依照給定的標籤名稱建立一個新的元素節點。方法只有一個參數:將被建立的元素的名字,是一個字串. var reference = document.createElement(element);方法的回傳值:是一個指向新節點的引用指標。傳回值是一個元素節點,所以它的 nodeType 屬性值等於 1。
新元素節點不會自動加入文件裡,新節點沒有 nodeParent 屬性,它只是一個存在於 JavaScript 上下文的物件. var pElement = document.createElement("p");
//建立一個新的元素
var pElement=document.createElement("li");
//設定屬性值
pElement.setAttribute("id","pid");
//取得父元素
var loveElement=document.getElementById("love");
//在父元素中增加子元素
loveElement.appendChild(pElement);
;
//透過id取得剛建立的元素
var pidElement=document.getElementById("pid");
alert(pidElement.getAttribute("id"));
createTextNode()建立一個包含給定文字的新文字節點。這個方法的回傳值是一個指向新文字節點來引用指標。 var textNode = document.createTextNode(text);
方法只有一個參數:新文字節點所包含的文字字串方法的回傳值:是指向新節點的引用指標。它是一個文字節點,所以它的nodeType 屬性等於3.
新元素節點不會自動加入文件裡,新節點沒有nodeParent 屬性
var pElementText=document.createElement("li") ;
var textElement=document.createTextNode("南京");
pElementText.appendChild(textElement);
九、插入節點(1)
appendChild()為給定元素增加一個子節點: Child). 給定子節點newChild 為給定元素節點element 的最後一個子節點。
此方法通常與 createElement() createTextNode() 搭配使用
新節點可以被追加給文件中的任何一個元素
removeChild()從一個給定元素中刪除一個子節點
var reference = element.removeChild(node);傳回值是一個指向已刪除的子節點的參考指標。
某個節點被removeChild()方法刪除時,這個節點所包含的所有子節點將同時被刪除。
ChildNodes:傳回一個數組,這個數組由給定元素節點的子節點構成: var nodeList = node.childNodes;文字節點和屬性節點都不可能再包含任何子節點,所以它們的ChildNodes 屬性永遠會回傳一個空數組。
如果想知道某個元素有沒有子節點,可以用 hasChildNodes 方法。如果想知道某個元素有多少個子節點,可以用 childNodes 陣列的 length 屬性。
childNodes 屬性是一個只讀屬性。
十二、取得第一個子節點
firstChild:這個屬性傳回一個給定元素節點的第一個子節點,傳回這個節點物件的指標。 var reference = node.firstChild;文字節點和屬性節點都不可能包含任何子節點,所以它們的 firstChild 屬性永遠會傳回 null。
var reference = node.ChildNodes[0];
firstChild 屬性是一個只讀屬性。
十三、取得最後一個子節點
lastChild:對應 firstChild 的一個屬性。 nextSibling: 傳回一個給定節點的下一個兄弟節點。 parentNode:傳回一個給定節點的父節點。
document 節點的沒有父節點。
previousSibling:回傳一個給定節點的上一個兄弟節點
十四、innerHTML屬性
瀏覽器幾乎都支援該屬性,但不是 DOM 標準的組成部分。 innerHTML 屬性可以用來讀,寫某給定元素裡的 HTML 內容。
複製程式碼