面对安装了IE 11的webbrowser控件中的javascript错误

时间:2015-04-09 04:11:44

标签: javascript c# webbrowser-control internet-explorer-11 ie8-browser-mode

我使用桌面应用程序,在我的应用程序中通过Web浏览器控件加载aspx页面。 IE8升级到IE11,我开始面对网页浏览器控制的javascript错误。 Web浏览器控件与IE8完美配合。

我尝试了为我的exe设置功能的选项 - FEATURE_BROWSER_EMULATION设置为8000/8888 FEATURE_USE_LEGACY_JSCRIPT设置为1 FEATURE_BROWSER_MODE设置为8 。还尝试使用meta标签来兼容兼容性和app浏览器文件。

我能够像IE8一样实现渲染,但javascript错误不断出现。 现在,将框架升级到4.5不是我的选择。

是否有任何注册表设置或应用程序设置会强制Web浏览器控件像使用IE8一样运行javascript?

2 个答案:

答案 0 :(得分:0)

我是通过在HEAD标记下面添加以下行来完成的。

<script>window.onerror=function(){return true;}</script>

答案 1 :(得分:0)

FEATURE_BROWSER_MODE现在似乎没有记录。据我所知,它曾经是与FEATURE_BROWSER_EMULATION相同的FEATURE键,但只是在IE8或IE9中。我不知道它是如何出现在我的注册表中的。

删除此密钥后,我的脚本问题就消失了。在我无法获取IHTMLDocument2指针的body元素之前。

https://social.technet.microsoft.com/Forums/ie/en-US/dd0bc3ed-806e-419d-8507-2f11b30744b5/change-browser-or-document-mode-for-ie9-using-c?forum=ieitprocurrentver

https://social.msdn.microsoft.com/forums/azure/en-US/0e1e52da-e462-42fd-bc46-567d08225d79/ihtmldocument2getbody-fails-in-chtmlview-for-ie-11?forum=iewebdevelopment