XML DOM nextSibling Property
❮ كائن العقدة
مثال
يقوم جزء الكود التالي بتحميل " 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();
//
Check if the next sibling node is an element node
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;
}
ناتج الكود أعلاه سيكون:
title = Everyday Italian
Next sibling: author = Giada De Laurentiis
التعريف والاستخدام
تُرجع الخاصية nextSibling العقدة التي تلي العقدة مباشرةً (العقدة التالية في نفس مستوى الشجرة).
إذا لم يكن هناك مثل هذه العقدة ، فإن هذه الخاصية ترجع خالية.
بناء الجملة
nodeObject.nextSibling
نصائح وملاحظات
ملاحظة: سوف يتعامل Firefox ومعظم المتصفحات الأخرى مع المسافات البيضاء الفارغة أو الأسطر الجديدة كعقد نصية ، بينما لن يتعامل Internet Explorer. لذلك ، في المثال أدناه ، لدينا وظيفة تتحقق من نوع العقدة للعقدة الشقيقة التالية.
تحتوي عُقد العناصر على عقدة من النوع 1 ، لذلك إذا لم تكن العقدة الشقيقة التالية عقدة عنصر ، فإنها تنتقل إلى العقدة التالية ، وتتحقق مما إذا كانت هذه العقدة هي عقدة عنصر. يستمر هذا حتى يتم العثور على العقدة الشقيقة التالية (والتي يجب أن تكون عقدة عنصر). بهذه الطريقة ستكون النتيجة صحيحة في جميع المتصفحات.
نصيحة: لقراءة المزيد حول الاختلافات بين المتصفحات ، تفضل بزيارة فصل متصفحات DOM في برنامج XML DOM التعليمي.
جرب بنفسك العروض التوضيحية
❮ كائن العقدة