Atribut firstChild DOM XML
Definisi dan penggunaan
firstChild
Atribut mengembalikan hujan pertama dokumen.
Syarat
documentObject.firstChildPerhatian:Firefox dan kebanyakan lainnya pereka pengesuramah akan mempunyai kosong atau baris baris sebagai hujan teks, tetapi Internet Explorer tidak. Oleh itu, di contoh di bawah, kami gunakan fungsi untuk memeriksa jenis hujan pertama anak.
元素节点的 nodeType 为 1,因此如果第一个子节点不是元素节点,它将移动到下一个节点,并检查该节点是否是元素节点。这会一直持续到找到第一个子节点(必须是元素节点)。这样,结果在所有浏览器中都是正确的。
提示:如需了解有关浏览器之间差异的更多信息,请访问 XML DOM 教程中的 DOM 浏览器章节。
实例
例子 1
下面的代码将 "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 xmlDoc = xml.responseXML; var x = get_firstchild(xmlDoc); document.getElementById("demo").innerHTML = "Nodename: " + x.nodeName +" " (nodetype: " + x.nodeType + ")<br>"; }
例子 2
获取文档的最后一个子节点:
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_lastchild(n) { var x = n.lastChild; while (x.nodeType != 1) { x = x.previousSibling; } return x; } function myFunction(xml) { var xmlDoc = xml.responseXML; // 获取文档的最后一个子节点 var x = get_lastchild(xmlDoc); // 获取根元素的最后一个子节点 var y = get_lastchild(xmlDoc.documentElement); document.getElementById("demo").innerHTML = "Nodename: " + x.nodeName +" " (nodetype: " + x.nodeType + ")<br>" + "Nodename: " + y.nodeName + " (nodetype: " + y.nodeType + ")<br>"; }