我有一个类似的代码

res = doc.evalute(xpathExpr,doc,
                  function(prefix) {return namespaces[prefix] || null;},
                  XPathResult.ANY_TYPE,null );


doc是DOM文档节点

当我像这样运行循环时

for(i in doc) alert(i);


它给出了评估方法

但是当我尝试在dom节点上使用此方法时,它给了我类似的错误

xpathResult未定义...

我正在使用android浏览器

提前致谢....

最佳答案

XPathResult.ANY_TYPE


不能保证DOM Level 3 XPath XPathResult接口实际上将表示为称为windowXPathResult成员。实际上,没有一个DOM接口被指定为在window中反映为构造函数。在大多数非IE浏览器中,很多都是这样。但是Android的浏览器似乎不支持evaluate。我猜这就是为什么它也不提供HTMLDocument的原因。

因此,如果要获取像XPathResult这样的静态成员,唯一的可靠方法是已拥有该类的实例,然后从该实例访问ANY_TYPE。由于此时您还没有XPathResult,所以最好只说.ANY_TYPE

关于xml - document.evaluate函数给出异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2698586/

10-08 21:38