我刚刚安装在我的Windows 7的IE10,而且我发现,即使我很高兴,从AJAX请求个XML现在可以兼容DOM文档,就像一个相当基本的功能document.evaluate
仍然不支持。
更糟糕的是,由于这些个XML 不是定义Microsoft IXMLDocument
对象,节点不支持selectNodes
和selectSingleNode
了。 最后,似乎IE10不支持DOM Level 3的XPath或MSXML的XPath。
严重的是,微软? 是否有什么我失踪?
当然,我可以使用querySelector
和querySelectorAll
,但我不希望失去相当多的向后兼容性。
否则 ,人们仍然可以要求使用这条线MSXML文档
try {xhr.responseType = "msxml-document";} catch(e) {}
如规定在这里 ,但我认为这将是很好对付,最后,在IE标准DOM文档了。
那么,有没有在IE10使用XPath标准DOM文档的方法吗?
UPDATE 26/7/2013 IE11目前还不稳定,但仍然不支持document.evaluate
。 如果它不支持它在稳定的版本,我怀疑它永远不会支持它。 不用说,这是ridicolous。
我让你可以使用querySelector
/ All
的DOM节点,但它不是在IE9和较低,有还是相当常用的支持,反正XPath是比选择更强大。
幸运的(如果你能说),你仍然可以设置xhr.responseType = "msxml-document"
。 有那么一刻我怕你不能再这样了......
UPDATE 23/11/2013 IE11是稳定的,但现在,可悲的是,它不支持document.evaluate
。 作为重量级的XML文档中使用越来越少,在网络应用程序支持JSON或其他光符号格式,这是成为一个问题较少,但仍。
设置responseType
财产仍然提供传统的XML文档,所以没有什么损失,我猜。 我不知道这是否会为IE12留真实,虽然。
UPDATE 15/8/2015现在听起来很可笑,但现在边支持document.evaluate
。 就在(几乎)都切换到JSON进行数据交换。 嗯,迟到总比不到好,我猜。