【问题标题】:using xpaths in javascript在 JavaScript 中使用 xpath
【发布时间】:2011-04-11 08:14:12
【问题描述】:

我有大量用于在网页中选择内容的 XPath,我希望用户能够在浏览器(包括 IE)中使用它们。

你有什么推荐的? 尝试使用 JavaScript 解释 XPath?
或者也许转换为正则表达式?

一些现有的 JavaScript XPath 工作:
http://js-xpath.sourceforge.net/xpath-example.html
http://goog-ajaxslt.sourceforge.net

【问题讨论】:

  • 好像你回答了你自己的问题不是吗?
  • 是什么让您认为 XPath 可以转换为正则表达式?
  • 关于使用正则表达式解析HTML:stackoverflow.com/questions/1732348/…
  • 请停止链接这个答案让我比写它的人更生气/.*/g KAJSHDKAJSHDKASHD
  • @Richard:你的目标浏览器是什么?我问,因为今天selectNodes 适用于 IE,evaluate 适用于 Firefox、Chrome、Opera 和 Safari...

标签: javascript regex xpath cross-browser


【解决方案1】:

我会寻找一个 XSLT javascript 库。由于大多数现代浏览器都内置了 XSLT 支持,并且 XSLT 包括对 XPath 的支持,因此可以使用该引擎来支持您的 XPath 选择器。

就我个人而言,我已经成功地使用了 Sarissa 和 Glyphix jQuery.xslTransform 库:

这看起来也很有趣:

【讨论】:

    【解决方案2】:

    现在的浏览器开箱即用地支持基于 XPath 1.0 的 DOM 3 XPath。主要的 API 是 document.evaluate 函数,在除 IE 之外的所有市长桌面浏览器中 is available

    如果你想在旧版浏览器或 IE 中使用它,还有 polyfills。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-28
      • 1970-01-01
      • 2016-07-19
      • 2013-12-07
      • 1970-01-01
      • 1970-01-01
      • 2011-12-23
      • 2012-07-19
      相关资源
      最近更新 更多