XML DOM lastChild ominaisuus

Määrittely ja käyttö

lastChild Ominaisuus palauttaa dokumentin viimeisen lapsinoden.

Syntaksi

documentObject.lastChild
Vinkit ja huomiot

Huomioitavaa:Firefox ja useimmat muut selaimet näkevät tyhjät tilat tai rivinvaihdot tekstityökaluina, mutta Internet Explorer ei. Siksi alla olevassa esimerkissä käytämme funktiota tarkistamaan viimeisen lapsinoden tyypin.

Elementtisolun nodeType on 1, joten jos viimeinen lapsisolmu ei ole elementtisolmu, se siirtyy edelliseen solmuun ja tarkistaa, onko se elementtisolmu. Tämä jatkuu, kunnes löydetään viimeinen lapsisolmu (se on elementtisolmu). Tämä varmistaa, että tuloksena oleva tulos on oikein kaikissa selaimissa.

Vinkki:Lisätietoja selaimien välisistä eroista löydät XML DOM -oppaasta, osasta DOM selaimet.

Esimerkki

esimerkki 1

Tässä koodissa "books.xml" ladataan xmlDoc:iin ja näytetään dokumentin viimeisen lapsen solun nimi ja solutyypi:

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);
    document.getElementById("demo").innerHTML =
    "Nodename: " + x.nodeName +"
    " (nodetype: " + x.nodeType + ")<br>";
}

Kokeile itse

esimerkki 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_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);
    // 获取根元素的第一个子节点
    var y = get_firstchild(xmlDoc.documentElement);
    document.getElementById("demo").innerHTML =
    "Nodename: " + x.nodeName +" 
    " (nodetype: " + x.nodeType + ")<br>" +
    "Nodename: " + y.nodeName + 
    " (nodetype: " + y.nodeType + ")<br>";
}

Kokeile itse