【问题标题】:What cases will prevent javascript from being executed in a WPF WebBrowser control?哪些情况会阻止 javascript 在 WPF WebBrowser 控件中执行?
【发布时间】:2012-05-03 23:16:26
【问题描述】:

我们有一个 System.Windows.Controls.WebBrowser 控件呈现 HTML 并引用 jQuery(通过 https 连接检索)。我们的测试机最近将其 Internet Explorer 版本升级到 8.0.7600.16385。升级后,WebBrowser 控件停止执行 javascript。我们在常规浏览器和 System.Windows.Forms.WebBrowser 控件中测试了相同的 HTML,它在两者中都能完美运行。

有人知道是什么原因吗?

【问题讨论】:

    标签: wpf webbrowser-control


    【解决方案1】:

    这可能是由于安全限制。尝试在您的页面上包含Mark of the Web。比如这条评论会告诉WebBrowser执行带有本地内网区域安全策略的页面:

    <!-- saved from url=(0016)http://localhost -->
    

    【讨论】:

    • 在阅读您的回答之前,我从来不知道 MOTW...但我应该指出,doco 说您不能使用它来提升您的权限,这似乎是你的建议?
    • @slugster,不,它不会导致特权提升。我不知道它是如何工作的,我只知道我在类似的场景中使用过一次,它对我有用......
    【解决方案2】:

    “JavaScript 不执行”的典型原因是解析或执行时出现浏览器错误:文件不存在、文件中存在语法错误、脚本在运行时抛出异常等。您尝试过通过在常规浏览器中进行测试来排除这种情况,但是脚本中是否有任何内容可以检测到 UserAgent 或浏览器功能并且失败了?您可以从 WPF WebBrowser 控件中获取控制台错误吗?

    【讨论】:

      猜你喜欢
      • 2011-01-12
      • 2013-01-18
      • 2011-06-16
      • 2018-08-27
      • 2010-09-15
      • 1970-01-01
      • 2013-12-30
      • 1970-01-01
      • 2011-01-02
      相关资源
      最近更新 更多