首页 文章

如何在IE9中检测浏览器模式是否在“Internet Explorer 9兼容性视图”中?

提问于
浏览
3

我使用javascript脚本使用偏移对齐某些元素 . 根据浏览器类型计算偏移量,因为它们的行为不同 . 在IE9中,获取DOM中的子元素或计算某些偏移量,如果IE9处于IE9浏览器模式或IE9兼容视图浏览器模式,则行为会有所不同 .

如何检测浏览器模式是否在“Internet Explorer 9兼容性视图”中?此模式由用户在开发人员工具(F12)浏览器模式菜单选项中设置 .

3 回答

  • 1

    很确定,我正在运行Linux并且我的虚拟映像刚刚破坏:

    if (document.all && document.documentMode === 8 && !document.addEventListener) {
        // IE9/IE10 in compatibility mode as IE8
    }
    

    在UA上:

    https://stackoverflow.com/a/12183662/887539

  • 0

    我不记得我在哪里得到这段代码,但基本上IE8及其上的文件属性名为“documentMode” . 如果存在,但您将IE7视为浏览器,则可以放心地假设您处于兼容模式 .

    documentMode explaination

  • 0

    在IE7兼容模式下运行时,用户代理字符串可能与IE9不同,因此这将是找到不同IE版本之间差异的最佳方法之一 .

    你可以在这里阅读更多相关信息:http://blogs.msdn.com/b/ie/archive/2010/03/23/introducing-ie9-s-user-agent-string.aspx

相关问题