是否有更短的表达式通过XPath获取DOM节点,从以下命令更简洁,需要大量变量。
doc.evaluate(xpath, doc, nsResolver, XPathResult.ANY_TYPE, null);
答案 0 :(得分:1)
据我所知,Firefox仅支持DOM Level 3 XPath API,其中一部分是evaluate
函数。如果你想要更短的东西,那么你需要自己滚动(或者找一个为你做这个的库),或者你需要使用不同的浏览器,例如你可以用Opera做的事情。 node.selectSingleNode(path [,nsResolver])
选择单个节点,node.selectNodes(path [, nsResolver])
可以选择节点的DOM NodeList。在您使用IE的MSXML XML DOM实现中,您还具有selectSingleNode
和selectNodes
函数,尽管命名空间处理与Opera实现不同,因为MSXML需要使用document.setProperty('SelectionNamespaces', 'xmlns:pf1="http://example.com/ns1" xmlns:pf2="http://example.com/ns2"')
。