jQuery和Windows 8 JavaScript Metro风格应用程序

可以在使用JavaScript API开发的Windows 8 Metro风格的应用程序中使用jQuery吗? 我正在查看示例,并且有很多标准的DOM操作,比如document.getElementByIdaddEventListener等。我想使用jQuery来提高工作效率。

$不是魔术。 jQuery只是一个javascript库。 它应该运行正常。

唯一可能不起作用的是cssHooks,它不会考虑环境的任何“怪癖”。

所以是的, 如果你相信微软能够产生一个遵循HTML / CSS / JS规范的环境,那么它会起作用。

你觉得幸运吗?

是的,它可以工作,任何JavaScript库都可以。 我在他们在BUILD会议上发布的一个平板电脑上validation了它。

但是,不要期望使用CDN加载脚本。 您必须下载它,将其添加到项目中,并在本地引用它。

tl; dr :你可以使用jQuery 1.7+,但是当涉及到标记修改时,它还没有完全集成。


来自开发中心(msdn)的报价

使用jQuery

您可以使用JavaScript在Windowsapp store应用中使用jQuery,但只能使用1.7及更高版本。 我们建议您始终使用最新版本。

这意味着它可以工作,但是您将遇到HTML和DOM API更改列表(msdn)中列出的一些非标准行为

如果存在不安全的标记 ,则在设置innerHtml属性时会提到exception(其中包括: 使HTML更安全 ),但这是非阻塞的,加载jQuery库(1.8.2)的简单事实将触发一些。

如前所述,您需要使用库的本地副本(无CDN)。

您可以使用任何JS库。 我怀疑像WinJS.xhr(又名’$ .ajax’)这样的方法,因此WinJS不依赖于jQuery。

它应该运行正常。 jQuery只是一个库。 $('#someid')将在内部调用document.getElementById您可以使用它,就像您可以使用自己编写的javascript代码一样…

JQuery应该可以正常工作,但请记住,在您的示例中,有一些内置function可用于执行此类操作:

 WinJS.Utilities.query("#someId li") .listen("click", function (result) { 

查询收集文档

不要使用像WinJS这样的任何Windows库。 为什么要锁定自己并依赖专有代码? 坚持使用通常的东西,即HTML,CSS,JS(JQuery或其他)。 它只会让你未来的支持/开发更加可预测……

与所有第三方JavaScript库一样,您应该记住几件事。

我还写了一个免费的Windows商店游戏工具包,它使用第三方库,你可以在这里获取免费资源: http : //win8gamekit.codeplex.com

实际上你可以通过Visual Studio下载它。 如果您下载NuGet包管理器。
工具 – >添加包和扩展

在NuGet Package Manager的左侧在线包中搜索并安装。

然后在你想要jQuery的项目中,右键单击你的引用并添加一个NuGet包,然后搜索jQuery。 这就是我使用的。