作者:手机用户2602916737 | 来源:互联网 | 2023-05-17 21:24
我已将手机升级到Android4.3.当我使用默认的Android浏览器在我的网站上打开一个使用xmlDoc.evaluate(equestID,xmlDoc,null,XPa
我已将手机升级到Android 4.3.当我使用默认的Android浏览器在我的网站上打开一个使用
xmlDoc.evaluate("//requestID", xmlDoc, null, XPathResult.ANY_TYPE,null);
选择节点,出现以下Javascript错误:
INVALID_EXPRESSION_ERR:DOM Xpath异常51
如您所见,xpath是正确的.
我试图从w3schools调出以下页面,该页面具有一些代码以从XML文档中选择节点.但是结果没有显示.所以我假设它是由相同的错误引起的.
http://www.w3schools.com/xsl/tryit.asp?filename=try_xpath_select_cdnodes
该代码在升级到4.3之前可以正常工作.因此,这可能是Android 4.3特有的.
是否有人遇到相同的错误?您对解决方法有何建议?
谢谢!
解决方法:
我确认此错误是由某些三星设备引起的.解决此问题的方法是使用另一种xpath实现,这样我们就可以避免使用Samsung的有问题的xpath实现.
我尝试了XPathJS(https://github.com/andrejpavlovic/xpathjs),xpath问题似乎已解决.
只需包含js,然后执行:
// bind XPath methods to document and window objects
// NOTE: This will overwrite native XPath implementation if it exists
XPathJS.bindDomLevel3XPath();
无需其他代码更改.