如何使用邪恶的良好的xpath库编写跨浏览器XPath查询?

时间:2013-04-20 05:06:05

标签: javascript xml xpath cross-browser wicked-good-xpath

我从stackoverflows的一个回复中得知,如果我们想编写跨浏览器XPath查询,那么就存在一个名为来自Google的Wicked XPath Query的库。这是链接Wicked Good XPath

有人实施了这样的吗?如果是,那么请指导我如何编写Xpath查询跨浏览器库。我的目标浏览器是IE(7,8,9,10)和谷歌浏览器。我可以在IE和Google Chrome中查看的任何工作示例都将受到赞赏。

我期待该解决方案也应该在IE 10中运行。编写跨浏览器xpath的原因是我不必担心在不同的浏览器中执行xpath查询时会有任何微小的变化。

赞赏进一步的援助。

修改

我接受了谢尔盖·伊林斯基的回答解决方案的更多解释:

在这里,我正在编写一个示例,以便任何纯粹使用XML数据的人都可以获得想法。

如果您的XML结构如下所示

<elementNode id="13" std="1">
    ....
</elementNode>

然后我们可以像下面那样编写xpath查询

<script type="text/javascript">
    (function() {
        res = $.xpath($("#selectorID"),"//elementNode[@id='10']");
        console.log(res[0].getAttribute("id")); //will print 10 in console
        console.log(res[0].getAttribute("std")); //will print 1 in console
    })();
</script>

2 个答案:

答案 0 :(得分:3)

您可能需要尝试jQuery XPath plugin with support for XPath 2.0语法跨浏览器。

答案 1 :(得分:1)

Wicked Good XPath仅支持HTML文档。所有浏览器本身都支持XPath for XML docs,尽管IE通过稍微不同的API。 (selectNode,selectNodes而不是document.evaluate)。