在 WinJS 通用应用程序中打开新的 window

Open new window in WinJS Universal App

我正在尝试弄清楚如何从我的 WinJS Universal Windows 应用程序中打开一个新的 window。

我发现了很多关于如何使用 Windows.ApplicationModel.Core.CoreApplication.CreateNewView 在 XAML 通用应用程序中执行此操作的示例,但我似乎无法在 WinJS 或我的 Javascript 中的 Windows 个命名空间。根据我编写 Javascript 时的代码提示,我能够看到有一个 Windows.ApplicationModel.Core 命名空间,但其中唯一出现的 class 是 AppListEntry .没有 CoreApplicationthe documentation 建议的任何其他 class。

我一直在努力寻找这是否可行。我一直没能找到任何专门说明你 不能 在 WinJS 应用程序中执行此操作的资源,但我也没有找到任何说明如何执行此操作的示例.

我下载了 Universal Windows App Samples,那里确实有一个 MultipleViews 项目,但它不包含 JS 构建。

有谁知道是否可以从 WinJS 应用程序中打开一个新的 window?

当你这样做时会发生什么:

window.open("http://www.w3schools.com");

或者像 HTML window 那样将目标设置为“_blank”?

<a href="http://www.w3schools.com" target="_blank">Visit W3Schools</a> 

有为 Intel XDK(一种 Cordova 产品)编写的工具,可以解决 Windows 上 JS 运行 的一些限制。这是 link: https://github.com/xmnboy/xdk-win8x-compat.js 。它可能会解决其中的一些问题。

当我编写 Win8 JS 应用程序时,我知道我可以将函数包装在:

MSApp.execUnsafeLocalFunction(unsafeFunction);

(documentation),这将允许我将 JS 注入 DOM。您可能能够编写一个函数来创建一个新的window。