jquery通过xpathselect元素

我有一个xpathselect器。 我怎样才能得到匹配的select器使用jQuery的元素?

我已经看到https://developer.mozilla.org/en/Introduction_to_using_XPath_in_JavaScript,但它不使用jquery,它似乎有点太冗长,我想它不是跨浏览器。

此外,这个http://jsfiddle.net/CJRmk/似乎不工作…

Firefox,Chrome,Safari和Opera支持document.evaluate() (DOM Level 3 XPath) – 唯一缺less的主要浏览器是MSIE。 尽pipe如此,jQuery支持基本的XPathexpression式: http : //docs.jquery.com/DOM/Traversing/Selectors#XPath_Selectors (移入当前jQuery版本的插件,请参阅https://plugins.jquery.com/xpath/ ) 。 它只是将XPathexpression式转换为等效的CSSselect器。

如果你正在debugging或类似的 – 在铬开发工具,你可以简单地使用

 $x('/html/.//div[@id="text"]') 

首先创build一个xpathselect器函数。

 function _x(STR_XPATH) { var xresult = document.evaluate(STR_XPATH, document, null, XPathResult.ANY_TYPE, null); var xnodes = []; var xres; while (xres = xresult.iterateNext()) { xnodes.push(xres); } return xnodes; } 

要使用jQuery的xpathselect器,你可以这样做:

 $(_x('/html/.//div[@id="text"]')).attr('id', 'modified-text'); 

希望这可以帮助。