XML DOM firstChild 属性
定义和用法
firstChild
属性返回指定节点的第一个子节点。
语法
nodeObject.firstChild
注意:Firefox และส่วนใหญ่ของเบราซเรอร์อื่นจะมองเห็นช่องว่างหรือบรรทัดว่าเป็นตัวอักษรของโหระบิน แต่ Internet Explorer ไม่เช่นนั้น。ดังนั้น ในตัวอย่างด้านล่างนี้ เราใช้ฟังก์ชันเพื่อตรวจสอบชนิดของโหระบินมีลูกโหระบินแรก
nodeType ขององค์ประกอบหลักเป็น 1 ดังนั้น ถ้าองค์ประกอบแรกไม่ใช่องค์ประกอบ จะเคลื่อนย้ายไปยังองค์ประกอบต่อไป และตรวจสอบว่าองค์ประกอบนี้เป็นองค์ประกอบหรือไม่ จะดำเนินการต่อไปจนหาองค์ประกอบแรก (ต้องเป็นองค์ประกอบ) ที่ถูกต้องในทุกเว็บเบราวเซอร์
คำเตือน:ถ้าต้องการข้อมูลเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างเว็บเบราวเซอร์ โปรดเข้าดูบทความ DOM บริการเว็บที่หน้าเรียนรู้ XML 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
ขององค์ประกอบที่สุดขององค์ประกอบของ 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_lastchild(n) { var x = n.lastChild; while (x.nodeType != 1) { x = x.previousSibling; } return x; } function myFunction(xml) { var xmlDoc = xml.responseXML; // ขององค์ประกอบที่สุดขององค์ประกอบของ xmlDoc var x = get_lastchild(xmlDoc); // ขององค์ประกอบที่สุดขององค์ประกอบรากของ 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>"; }