Свойство nextSibling в XML DOM

Референтное руководство по объекту Node

Определение и использование

Свойство nextSibling возвращает следующий элемент (находящийся на одном уровне иерархии).

Если такого узла нет, то свойство возвращает null.

Синтаксис:

nodeObject.nextSibling

Советы и комментарии

Комментарий:Internet Explorer будет игнорировать пустые текстовые узлы, созданные между узлами (например, символы перевода строки), в то время как Mozilla это не делает. Поэтому в следующем примере мы используем функцию для проверки типа узла первого ребенка.

Тип узла элемента равен 1, поэтому если первый ребенок не является элементом, он переходит к следующему узлу и продолжает проверять, является ли этот узел элементом. Этот процесс продолжается до тех пор, пока не будет найден первый элементный ребенок. Таким образом, мы можем получить правильный метод в Internet Explorer и Mozilla.

Совет:Если вам нужно больше информации о различиях между XML DOM в IE и Mozilla браузерах, пожалуйста, посетите наш DOM браузер Раздел

Пример

Во всех примерах мы будем использовать XML файл books.xmlи функцию JavaScript loadXMLDoc().

Ниже приведен фрагмент кода, который позволяет получить следующий sibling узел первого <title> элемента в XML документе:

//проверить, является ли следующий sibling узел узлом элемента
функция get_nextsibling(n)
  {
  var x=n.nextSibling;
  while (x.nodeType!=1)
   {
   x=x.nextSibling;
   }
  return x;
  }
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("title")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
var y=get_nextsibling(x);
document.write("<br />Следующий sibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);

Вывод:

title = Everyday Italian
Следующий sibling: author = Giada De Laurentiis

Референтное руководство по объекту Node