IE11 与 XPath

来源:互联网 发布:linux chown -x -r 编辑:程序博客网 时间:2024/05/16 07:27
IE11 有要命的改变:
1、其 Navigator.agent 串中不再有 MSIE 字样,而Navigator.appName中更是以 Netscape自称——据说是 HTML 5 的要求?只能通过其引擎名 Trident 来识别了。版本号的引导串为“rv:”
2、通过其 XHTTP 接口载入的 DOM,居然不支持 XPATH——竟然不如IE10,倒退回去了,太桑感了好不好。
3、既然 XHTTP 不好使了,试着检测 window.ActiveXObject:我晕,居然没了。诡异的是——从调试器来看,window.ActiveXObject 还是有的。试了下,彻底无语了:Boolean(window.ActiveXObject) 测试,会返回 false,但是,你可以 new window.ActiveXObject ,仍然会得到正常的结果。
4、另外,既然在 IE11 中只能用老式的 ActiveXObject,那么也就与 10 以下版本一样,其 XPath 表达式中下标计数从 0 开始(与W3C标准不符)。


结论:在 IE11 下,想用 XPath 的话,老老实实用 ActiveXObject,而且, 不得检测 ActiveXObject 存在与否。
奇葩,是吧。
1 0