XML DOM nextSibling hanyar

Kwarewa da amfani

nextSibling Hanyar ta samu kisanin da yake da kisanin (wannan yana da kisanin na kisanin na kisanin na kisanin).

Idan ba a samu kisanin da ya kamata ba, wannan hanyar ta samu null.

Lanarwa

nodeObject.nextSibling
Tushen da Rarrabe

Rarrabe:Firefox da dukkan browsers na farko suka kira hanyar da ba a samu ba ko kuma sauri da sauri na raba da kisanin na text, amma Internet Explorer ba. Saboda haka, a cikin shaidar da za a samu, a na yi lafiya da fannin don duba rarraba kisanin na kisanin na kisanin.

Asalin kisanin nodeType ce 1, kuma an fada bai kisanin da ba shi kisanin element, ya koma baya kisanin, kuma yana duba kisanin baya yana da kisanin element. Haka ya kammala har sai a samu kisanin da yake da kisanin da yake da kisanin (wannan yana da kisanin element). Kamar yadda, natanan a duk browsers suna da haka.

提示:要了解有关浏览器之间差异的更多信息,请访问 XML DOM 教程中的 DOM 浏览器章节。

实例

例子 1

下面的代码将 "books.xml" 加载到 xmlDoc 中,并从第一个 <title> 元素获取下一个同级节点:

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_nextsibling(n) {
    var x = n.nextSibling;
    while (x.nodeType != 1) {
        x = x.nextSibling;
    }
    return x;
}
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    var x = xmlDoc.getElementsByTagName("title")[0];
    var y = get_nextsibling(x);
    document.getElementById("demo").innerHTML = x.nodeName + " = " +
    x.childNodes[0].nodeValue +""}
    "<br>Next sibling: " + y.nodeName + " = " +
    y.childNodes[0].nodeValue;
}

亲自试一试

例子 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_previoussibling(n) {
    var x = n.previousSibling;
    while (x.nodeType != 1) {
        x = x.previousSibling;
    }
    return x;
}
function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    var x = xmlDoc.getElementsByTagName("author")[0];
    var y = get_previoussibling(x);
    document.getElementById("demo").innerHTML = x.nodeName + " = " + 
    x.childNodes[0].nodeValue +""}
    "<br>Previous sibling: " + y.nodeName + " = " + 
    y.childNodes[0].nodeValue;
}

亲自试一试