文档:getElementsByTagNameNS() 方法
返回一个包含属于指定命名空间的具有给定标签名称的元素的列表。将搜索整个文档,包括根节点。
语法
js
getElementsByTagNameNS(namespace, name)
参数
namespace-
要查找的元素的命名空间 URI(请参阅
element.namespaceURI)。 name-
要查找的元素的本地名称,或者特殊值
*,它匹配所有元素(请参阅element.localName)。注意:与
document.getElementsByTagName()不同,getElementsByTagNameNS()的参数区分大小写。
返回值
一个动态的 HTMLCollection,包含了按在树中出现的顺序排列的已找到的元素。
示例
在下面的示例中,getElementsByTagNameNS 从一个特定的父元素开始,并从该父元素开始通过 DOM 递归地自顶向下搜索,查找匹配 name 参数的子元素。
请注意,当调用 getElementsByTagName 的节点不是 document 节点时,实际上使用的是 element.getElementsByTagNameNS 方法。
要使用下面的示例,只需将其复制/粘贴到一个以 .xhtml 扩展名保存的新文件中。
html
<p>Some outer text</p>
<p>Some outer text</p>
<div id="div1">
<p>Some div1 text</p>
<p>Some div1 text</p>
<p>Some div1 text</p>
<div id="div2">
<p>Some div2 text</p>
<p>Some div2 text</p>
</div>
</div>
<p>Some outer text</p>
<p>Some outer text</p>
<button id="btn1">Show all p elements in document</button>
<br />
<button id="btn2">Show all p elements in div1 element</button>
<br />
<button id="btn3">Show all p elements in div2 element</button>
css
body {
border: solid green 3px;
}
#div1 {
border: solid blue 3px;
}
#div2 {
border: solid red 3px;
}
js
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`);
}
document.getElementById("btn1").addEventListener("click", getAllParaElems);
document.getElementById("btn2").addEventListener("click", div1ParaElems);
document.getElementById("btn3").addEventListener("click", div2ParaElems);
规范
| 规范 |
|---|
| DOM # ref-for-dom-document-getelementsbytagnamens① |
浏览器兼容性
加载中…