【问题标题】:How to load javascript in windows 8如何在 Windows 8 中加载 JavaScript
【发布时间】:2012-10-05 11:57:18
【问题描述】:

我正在寻找一种方法来实现 Internet Explorer - 我的 Winodws 8 应用程序中的桌面版本。这是由我的 c# 应用程序引起的——我需要运行 javascript 页面,但在 Metro 版本的 IE 中是不可能的。有什么方法可以做到这一点吗? 我将描述我的问题:当我想加载 DOM 页面的 html(由 javascript 呈现)时,我不能,因为 javascript 可以运行(我使用 WebView)。我尝试使用桌面版打开此页面,并且效果很好。不幸的是 Metro IE10 也无法显示内容和我的 WebView。 感谢帮助。

【问题讨论】:

  • 你能举一个不运行的 javascript 的例子吗?
  • HTML 是什么样的?可能是您依赖插件吗?普通的旧 Javascript 应该没问题(毕竟 Stack Overflow 有效)
  • 感谢您的回复。我需要解析这个:open.fm/play/2 以读取方形图像和所有其他字符串的源。但是我不能用metro IE打开它,html源不包含有用的数据。

标签: c# windows internet-explorer microsoft-metro


【解决方案1】:

您可以确保在 c# webview 中注入一个 javascript 文件: 这是按钮的操作:

private async void Lamp_Click(object sender, RoutedEventArgs e)
{
    Uri uri = new Uri("ms-appx:///js/injected.js");
    StorageFile file = await StorageFile.GetFileFromApplicationUriAsync(uri);
    string text = await FileIO.ReadTextAsync(file); //reading content as string
    var script = "(function(){" + text + "})()";
}

try
{
    var result = wv.InvokeScript("eval", new string[] { script });
}
catch (Exception) { }

wv 是 xaml 中 webview 元素的 id 名称

【讨论】:

  • 谢谢。你能告诉我是否可以将 Uri 设置为 http 地址吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-20
  • 1970-01-01
  • 2018-12-11
  • 1970-01-01
相关资源
最近更新 更多