XPathResult: snapshotItem() 方法
snapshotItem()
方法是 XPathResult
接口的方法,它返回快照集合中的一个项目,如果索引不在节点范围内的,则返回 null
。与迭代器结果不同,快照不会失效,但如果文档被修改,可能与当前文档不一致。
语法
js
snapshotItem(i)
参数
i
-
一个数字,即项目的索引。
返回值
XPathResult
节点集中指定索引处的 Node
。
异常
TYPE_ERR
如果 XPathResult.resultType
不是 UNORDERED_NODE_SNAPSHOT_TYPE
或 ORDERED_NODE_SNAPSHOT_TYPE
,则会抛出类型为 TYPE_ERR
的 XPathException
。
示例
以下示例展示了 snapshotItem()
方法的使用。
HTML
html
<div>XPath example</div>
<div>Tag names of the matched nodes: <output></output></div>
JavaScript
js
const xpath = "//div";
const result = document.evaluate(
xpath,
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null,
);
let node = null;
const tagNames = [];
for (let i = 0; i < result.snapshotLength; i++) {
node = result.snapshotItem(i);
tagNames.push(node.localName);
}
document.querySelector("output").textContent = tagNames.join(", ");
结果
规范
规范 |
---|
DOM 标准 # dom-xpathresult-snapshotitem-index-index |
浏览器兼容性
BCD 表格仅在浏览器中加载