XPathResult: invalidIteratorState 属性

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

注意:此功能在 Web Workers 中可用。

XPathResult 接口中只读的 invalidIteratorState 属性表示迭代器已失效。如果 XPathResult.resultTypeUNORDERED_NODE_ITERATOR_TYPEORDERED_NODE_ITERATOR_TYPE,并且在返回此结果后文档被修改过,则该属性为 true

一个布尔值,指示迭代器是否已失效。

示例

以下示例演示了 invalidIteratorState 属性的用法。

HTML

html
<div>XPath example</div>
<p>Iterator state: <output></output></p>

JavaScript

js
const xpath = "//div";
const result = document.evaluate(
  xpath,
  document,
  null,
  XPathResult.ANY_TYPE,
  null,
);
// Invalidates the iterator state
document.querySelector("div").remove();
document.querySelector("output").textContent = result.invalidIteratorState
  ? "invalid"
  : "valid";

结果

规范

规范
DOM
# dom-xpathresult-invaliditeratorstate

浏览器兼容性