XPathExpression - 表示已编译的 XPath 表达式
XPathExpression 接口表示已编译的 XPath 表达式,可以在文档或特定节点上对其求值,以从其 DOM 树中返回信息。当表达式将在应用程序中重用时,此功能很有用,因为它只被编译一次,并且表达式中出现的所有名称空间前缀都已被预先解析。
通过调用 XPathEvaluator.createExpression() 来创建此类型的对象。
方法
XPathExpression.evaluate()
计算给定节点或文档上的 XPath 表达式。
实例
以下实例显示了 XPathExpression 接口的用法。
<div>XPath 实例</div>
<div><div> 的数量:<output></output></div>
<script>
var xpath = "//div";
var evaluator = new XPathEvaluator();
var expression = evaluator.createExpression("//div");
var result = expression.evaluate(document, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE);
document.querySelector("output").textContent = result.snapshotLength;
</script>
规范
| 规范 | 状态 | 备注 |
|---|---|---|
| Document Object Model (DOM) Level 3 XPath Specification XPathExpression 的定义 |
推荐 | 初始定义 |
桌面浏览器兼容性
| 特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| 基础支持 | 支持 | ≤18 | 支持 | 未知 | 支持 | 未知 |
evaluate | 支持 | 12 | 支持 | 未知 | 支持 | 未知 |
移动浏览器兼容性
| 特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
|---|---|---|---|---|---|---|---|
| 基础支持 | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
evaluate | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |