Свойство XML DOM firstChild
❮ Объект документа
Пример
Следующий фрагмент кода загружает " books.xml " в xmlDoc и отображает имя узла и тип узла первого дочернего узла:
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 first node is an element node
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);
document.getElementById("demo").innerHTML =
"Nodename:
" + x.nodeName +
" (nodetype: " + x.nodeType + ")<br>";
}
Вывод кода выше будет:
Nodename: bookstore (nodetype: 1)
Определение и использование
Свойство firstChild возвращает первый дочерний узел документа.
Синтаксис
documentObject.firstChild
Советы и примечания
Примечание. Firefox и большинство других браузеров будут рассматривать пустые пробелы или новые строки как текстовые узлы, а Internet Explorer — нет. Итак, в приведенном ниже примере у нас есть функция, которая проверяет тип узла первого дочернего узла.
Узлы элементов имеют тип узла, равный 1, поэтому, если первый дочерний узел не является узлом элемента, он перемещается к следующему узлу и проверяет, является ли этот узел узлом элемента. Это продолжается до тех пор, пока не будет найден первый дочерний узел (который должен быть узлом элемента). Таким образом, результат будет правильным во всех браузерах.
Совет. Чтобы узнать больше о различиях между браузерами, посетите главу « Браузеры DOM » в нашем учебном пособии по XML DOM.
Демонстрации «Попробуйте сами»
❮ Объект документа