Atribut firstChild DOM XML
Definisi dan Penggunaan
firstChild
Atribut mengembalikan anak pertama dari node yang ditentukan.
Sintaks
nodeObject.firstChild
Perhatian:Firefox dan sebagian besar peramban lainnya akan menganggap spasi atau garis baris sebagai node teks, sedangkan Internet Explorer tidak. Oleh karena itu, di contoh di bawah ini, kami menggunakan fungsi untuk memeriksa tipe node anak pertama.
nodeType elemen adalah 1, jadi jika anak pertama bukan elemen, pindah ke node berikutnya dan periksa apakah node tersebut adalah elemen. Ini akan terus berlanjut sampai menemukan anak pertama (harus menjadi elemen). Hal ini memastikan hasil yang benar di semua browser.
Peringatan:Untuk mendapatkan informasi lebih lanjut tentang perbedaan antara browser, kunjungi bagian DOM Browser di tutorial XML DOM.
Contoh
Contoh 1
Berikut adalah kode untuk memuat "books.xml" ke xmlDoc dan menampilkan nama anak pertama:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xhttp.open("GET", "books.xml", true); xhttp.send(); // Memeriksa apakah akar pertama adalah elemen 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>"; }
Contoh 2
Mendapatkan anak terakhir dari dokumen:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xhttp.open("GET", "books.xml", true); xhttp.send(); // Memeriksa apakah akar terakhir adalah elemen function get_lastchild(n) { var x = n.lastChild; while (x.nodeType != 1) { x = x.previousSibling; } return x; } function myFunction(xml) { var xmlDoc = xml.responseXML; // Mendapatkan anak terakhir dari dokumen var x = get_lastchild(xmlDoc); // Mendapatkan akar elemen terakhir dari anak var y = get_lastchild(xmlDoc.documentElement); document.getElementById("demo").innerHTML = "Nodename: " + x.nodeName +" " (nodetype: " + x.nodeType + ")<br>" + "Nodename: " + y.nodeName + " (nodetype: " + y.nodeType + ")<br>"; }