Atribut lastChild DOM XML

Definisi dan Penggunaan

lastChild Atribut mengembalikan node anak terakhir dari node yang ditentukan.

Sintaks

nodeObject.lastChild
Tips dan Catatan

Perhatian:Firefox dan sebagian besar browser lainnya akan menganggap spasi atau garis baru sebagai node teks, tetapi Internet Explorer tidak. Oleh karena itu, di contoh di bawah ini, kami menggunakan fungsi untuk memeriksa tipe node node anak terakhir.

nodeType elemen node adalah 1, jadi jika anak terakhir bukan node elemen, akan berpindah ke node sebelumnya dan memeriksa apakah node ini adalah node elemen. Ini akan terus berlanjut sampai menemukan anak terakhir (mesti menjadi node elemen). Hal ini memastikan hasil yang benar di semua browser.

Petunjuk:Untuk mendapatkan informasi lebih lanjut tentang perbedaan antara browser, kunjungi bab DOM Browser di tutorial XML DOM.

Contoh

Contoh 1

Berikut kode akan mengambil "books.xml" ke xmlDoc dan menampilkan nama node anak terakhir 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 node terakhir adalah node 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;
    var x = get_lastchild(xmlDoc);
    document.getElementById("demo").innerHTML =
    "Nodename: " + x.nodeName +"}
    " (nodetype: " + x.nodeType + ")<br>";
}

亲自试一试

Contoh 2

Mengambil node pertama anak 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 node pertama adalah node 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;
    // Mengambil node pertama anak dokumen
    var x = get_firstchild(xmlDoc);
    // Mengambil node pertama anak elemen akar
    var y = get_firstchild(xmlDoc.documentElement);
    document.getElementById("demo").innerHTML =
    "Nodename: " + x.nodeName +"} 
    " (nodetype: " + x.nodeType + ")<br>" +
    "Nodename: " + y.nodeName + 
    " (nodetype: " + y.nodeType + ")<br>";
}

亲自试一试