XML DOM firstChild 屬性
❮ 元素物件
示例
下面的程式碼片段載入 "books.xml" 到 xmlDoc 並獲取第一個子節點。
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
// 檢查第一個節點是否為元素節點
function get_firstchild(n) {
var x = n.firstChild;
while (x.nodeType != 1) {
x = x.nextSibling;
}
return x;
}
function myFunction(xml) {
var x, i, txt, firstNode, xmlDoc;
xmlDoc = xml.responseXML;
x = xmlDoc.documentElement;
txt = "";
firstNode = get_firstchild(x);
for (i = 0; i < firstNode.childNodes.length; i++) {
if (firstNode.childNodes[i].nodeType == 1) {
// 只處理元素節點
txt += firstNode.childNodes[i].nodeName +
" = " +
firstNode.childNodes[i].childNodes[0].nodeValue + "<br>";
}
}
document.getElementById("demo").innerHTML = txt;
}
上面程式碼的輸出將是
title = Everyday Italian
author = Giada De Laurentiis
year = 2005
price = 30.00
自己動手試一試 »
定義和用法
firstChild 屬性返回所選元素的第一個子節點。
如果所選節點沒有子節點,則此屬性返回 NULL。
語法
elementNode.firstChild
提示和註釋
注意: Firefox 和大多數其他瀏覽器會將空白或換行符視為文字節點,而 Internet Explorer 則不會。因此,在下面的示例中,我們有一個函式來檢查第一個子節點的節點型別。
元素節點的 nodeType 為 1,因此如果第一個子節點不是元素節點,它會移到下一個節點,並檢查該節點是否為元素節點。此過程一直持續到找到第一個子節點(必須是元素節點)。這樣,結果在所有瀏覽器中都將是正確的。
提示: 要閱讀有關瀏覽器差異的更多資訊,請訪問我們 XML DOM 教程中的 DOM 瀏覽器章節。
❮ 元素物件