XPathResult: snapshotItem() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The snapshotItem()
method of the
XPathResult
interface returns an item of the snapshot collection or
null
in case the index is not within the range of nodes. Unlike the
iterator result, the snapshot does not become invalid, but may not correspond to the
current document if it is mutated.
Syntax
snapshotItem(i)
Parameters
i
-
A number, the index of the item.
Return value
The Node
at the given index within the node set of the
XPathResult
.
Exceptions
TYPE_ERR
In case XPathResult.resultType
is not
UNORDERED_NODE_SNAPSHOT_TYPE
or ORDERED_NODE_SNAPSHOT_TYPE
, an
XPathException
of type TYPE_ERR
is thrown.
Examples
The following example shows the use of the snapshotItem()
method.
HTML
<div>XPath example</div>
<div>Tag names of the matched nodes: <output></output></div>
JavaScript
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(", ");
Result
Specifications
Specification |
---|
DOM Standard # dom-xpathresult-snapshotitem-index-index |
Browser compatibility
BCD tables only load in the browser