Документ: метод getElementsByTagNameNS()
Базовая реализация Широко доступна
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Возвращает список элементов с заданным именем тега, принадлежащих заданному пространству имён. Поиск выполняется по всему документу, включая корневой узел.
Синтаксис
getElementsByTagNameNS(namespace, name)
Параметры
namespace-
URI пространства имён искомых элементов (см.
element.namespaceURI). name-
Локальное имя искомых элементов или специальное значение
*, которое соответствует всем элементам (см.element.localName).Примечание: В отличие от
document.getElementsByTagName(), параметры дляgetElementsByTagNameNS()чувствительны к регистру.
Возвращаемое значение
Живая HTMLCollection найденных элементов в порядке их появления в дереве.
Примеры
В следующем примере getElementsByTagNameNS начинается с определённого родительского элемента и рекурсивно просматривает DOM сверху вниз от этого родителя, ища дочерние элементы, соответствующие тегу, указанному в параметре name.
Обратите внимание, что если узел, на котором вызывается getElementsByTagName , не является узлом document, на самом деле используется метод element.getElementsByTagNameNS.
Чтобы использовать следующий пример, просто скопируйте и вставьте его в новый файл, сохранив его с расширением .xhtml.
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>getElementsByTagNameNS example</title>
<script>
function getAllParaElems() {
const allParas = document.getElementsByTagNameNS(
"http://www.w3.org/1999/xhtml",
"p",
);
const num = allParas.length;
alert(`There are ${num} <p> elements in this document`);
}
function div1ParaElems() {
const div1 = document.getElementById("div1");
const div1Paras = div1.getElementsByTagNameNS(
"http://www.w3.org/1999/xhtml",
"p",
);
const num = div1Paras.length;
alert(`There are ${num} <p> elements in div1 element`);
}
function div2ParaElems() {
const div2 = document.getElementById("div2");
const div2Paras = div2.getElementsByTagNameNS(
"http://www.w3.org/1999/xhtml",
"p",
);
const num = div2Paras.length;
alert(`There are ${num} <p> elements in div2 element`);
}
</script>
</head>
<body style="border: solid green 3px">
<p>Some outer text</p>
<p>Some outer text</p>
<div id="div1" style="border: solid blue 3px">
<p>Some div1 text</p>
<p>Some div1 text</p>
<p>Some div1 text</p>
<div id="div2" style="border: solid red 3px">
<p>Some div2 text</p>
<p>Some div2 text</p>
</div>
</div>
<p>Some outer text</p>
<p>Some outer text</p>
<button onclick="getAllParaElems();">
Show all p elements in document
</button>
<br />
<button onclick="div1ParaElems();">
Show all p elements in div1 element
</button>
<br />
<button onclick="div2ParaElems();">
show all p elements in div2 element
</button>
</body>
</html>
Спецификации
| Спецификация |
|---|
| DOM # ref-for-dom-document-getelementsbytagnamens① |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
getElementsByTagNameNS |
1 | 12 | 1 | ≤12.1 | 1 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByTagNameNS