如果嵌入为 activeX,IE8 会破坏兼容性视图

Posted

技术标签:

【中文标题】如果嵌入为 activeX,IE8 会破坏兼容性视图【英文标题】:IE8 breaks compatibility view if embedded as an activeX 【发布时间】:2015-09-21 16:02:51 【问题描述】:

将它用作 MFC 中的 CDhtmlDialog,我注意到对于某些网站(例如 wikipedia.org),嵌入式 IE 报告的 documentMode 属性为 7,而使用 IE 应用程序正确地将 documentMode 属性显示为 8 . IE11 也是如此(documentMode 属性在独立启动时为 11,在嵌入式使用时为 7)。这是怎么回事?

【问题讨论】:

WebBrowser 控件的处理方式与本机 IE 不同。使用 BROWSER_EMULATION 功能控制键将默认设置为您的偏好;请参阅msdn.microsoft.com/en-us/library/… 和***.com/questions/646742/… 了解更多信息。 @LanceLeonard 就是这样! 【参考方案1】:

IE 的兼容性视图设置决定了网站呈现方式的优先级。默认情况下,无论DOCTYPE 是什么,这些设置都会强制所有 Intranet 站点进入兼容性视图。您可以使用覆盖兼容性视图设置的X-UA-Compatible,因此无论浏览器设置如何,页面都将以标准模式呈现。 X-UA-Compatible 元标记允许您设置页面应呈现为哪个版本的 Internet Explorer。例如,使用IE=Edge 告诉浏览器呈现最新的。

<meta http-equiv="X-UA-Compatible" content="IE=edge">

【讨论】:

您的答案在直接应用于 IE 加载的网页时是正确的,但是,它无法解释 IE 和托管 webbrowser 控件的应用程序之间的默认差异。 (存在这些差异是因为假设应用程序具有与浏览器不同的兼容性要求。)请参阅我之前评论中的链接以获取更多信息。

以上是关于如果嵌入为 activeX,IE8 会破坏兼容性视图的主要内容,如果未能解决你的问题,请参考以下文章

音频对象可以嵌入到 InfoPath 表单中吗?

在发布模式下崩溃但在调试模式下不崩溃的 ActiveX 控件

缺少IE8兼容模式按钮

如何获得嵌入式 IE ActiveX 控件的版本?

IE8升级新版Flash Player ActiveX14导致的discuz图片附件无法上传 解决方法

解决video.js不兼容ie8问题