允许javascript在Windows窗体Web浏览器上运行

Rya*_*nas 18 javascript c# webbrowser-control windows-forms-designer

我想使用Web浏览器访问在加载时使用JavaScript的网站.据我所知,Web浏览器是当前安装的Internet Explorer版本的包装器.但是,在Internet Explorer上测试网站不会产生错误,但如果我使用Web浏览器访问内容则不起作用.

我还查看了我的互联网安全设置,以确保它已启用.

我得到的问题是;

Web浏览器出错

Rya*_*nas 23

很尴尬的是,我在发布这个问题后找到了答案,但我认为任何遇到同样问题的人都会在这个答案中找到安慰;

似乎下载最新版本的Internet Explorer是不够的,您必须通过添加新的注册表项来明确指定要使用的IE版本.

HTML修复;

<!DOCTYPE html> 
<html> 
  <head> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 
    ... other headers
  </head>
  <body>
    ... content
  </body>
</html>  
Run Code Online (Sandbox Code Playgroud)

通过注册表;

对于64位或32位计算机,请转到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION.

或者在64位系统上转到32位的HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION(如果你有这些,可以在两个位置都添加密钥.如果你没有它,你可以自己制作文件夹).

创建一个新的DWORD键并将其命名为应用程序的名称,例如"myapp.exe",然后编辑该键的值.您可以添加许多不同的值,具体取决于您要模拟的IE版本.我输入11001(作为十进制值 - 十六进制中的0x2AF9)模拟IE 11(更多值位于:http://msdn.microsoft.com/en-us/library/ee330730%28v=vs.85%29. aspx#browser_emulation).

如果您像我一样使用Visual Studio,您会注意到此方法可能甚至不起作用.但是,它确实有效.您需要使用资源管理器或终端手动打开.exe文件,而不是在Visual Studio上运行该项目.

如果您希望在Visual Studio上运行该程序,请考虑添加"myapp.vshost.exe"的密钥,因为它用于调试.

更多信息和来源来自; http://weblog.west-wind.com/posts/2011/May/21/Web-Browser-Control-Specifying-the-IE-Version.

我希望这可以帮助任何有关您的Web浏览器的任何问题,可能使用错误的IE版本作为包装或功能不能按预期工作.


Pra*_*apG 16

 <!DOCTYPE html> 
<html> 
  <head> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 
    ... other headers
  </head>
  <body>
    ... content
  </body>
</html>  
Run Code Online (Sandbox Code Playgroud)

这将是有效的,这是Ryan Singh答案的总结