XML DOM firstChild ตัวแปร
การระบุและการใช้งาน
firstChild
ตัวแปรที่ส่งผลกลับของคุณของเอกสารลูกแรก
การใช้งาน
documentObject.firstChildสัญญาณเตือน:Firefox และบราวเซอร์ที่ส่วนใหญ่อื่นจะมองเห็นช่องว่างหรือการเปลี่ยนแปลงบรรทัดเป็นโนดที่เป็นข้อความ แต่ Internet Explorer ไม่เช่นนั้น。ดังนั้น ในตัวอย่างที่ต่อไปนี้ เราใช้ฟังก์ชันเพื่อตรวจสอบประเภทโนดของลูกโนดแรก
คำแนะนำ:
nodeType ขององค์ประกอบตัวอย่างเป็น 1 ดังนั้น ถ้าลูกน้องแรกไม่ใช่องค์ประกอบ มันจะเคลื่อนไปยังลูกน้องต่อไปและตรวจสอบว่าลูกน้องนั้นเป็นองค์ประกอบหรือไม่ จะทำการนี้ตลอดไปจนหาลูกน้องแรกที่เป็นองค์ประกอบ (ต้องใช้เป็นองค์ประกอบ) แล้ว ทำให้ผลลัพธ์ในทุกเว็บเบราเซอร์ที่มีทั้งหมดเป็นตัวอย่างคำเตือน:
หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างเว็บเบราเซอร์ โปรดเข้าดูวิธีการ DOM ที่มีอยู่ในบทเรียน DOM ของ XML DOM Tutorial.
ตัวอย่าง
ตัวอย่าง 1
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>"; }