在WebBrowser控件上页面导航后尝试执行JavaScript时出错

时间:2011-04-18 16:00:02

标签: javascript silverlight windows-phone-7 browser

我在WP7应用程序中使用WebBrowser控件并将IsScriptEnabled设置为true。然后,当尝试通过WebBrowser的InvokeScript调用脚本时,我看到一个奇怪的行为: 脚本在第一页上正确执行。然后我通过Navigate()导航到另一个页面并尝试执行我收到以下错误消息的脚本:

“发生了未知错误。错误:80020006”。

我尝试在导航到下一页之前将IsScriptEnabled设置为true - 没有运气。等待完成文档加载状态也无济于事。

所有HTML文件都存储在独立存储中并正确显示。只有脚本交互不起作用。

有什么想法吗?

3 个答案:

答案 0 :(得分:5)

答案 1 :(得分:1)

由于未能执行所需功能,可能出于各种原因显示

80020006。通常情况下,无法找到该功能时会遇到这种情况 确保您正在加载包含该功能的文件的正确版本,而不是旧的缓存版本 在手机上缓存可能非常激进,所以请不要假设您已加载最新版本的文件。如有疑问,请更改文件内容,以便您可以看到它是最新/适当的版本。

<强>更新
由于您似乎正在尝试针对已在网络上浏览过的任意网页执行代码,因此您可能遇到与http://social.msdn.microsoft.com/Forums/en-US/windowsphone7series/thread/e00942e4-e40c-4e80-b112-30ca0709fbc8/

中记录的问题相同的问题

这也可能是相关的:http://social.msdn.microsoft.com/Forums/en-US/mktplace/thread/4ae5f139-f8b2-495b-860f-01075b735ee7/

答案 2 :(得分:0)

确保所有网页都有DOCTYPE标记,例如

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

我还发现包含一段javascript,即使是一对空标签也有帮助:

<html>
    <head>
        <script></script>
        ...  
  <head>
  <body>
      ...
  </body>
</html>