Windows 8 Store App和jQuery - MSApp.execUnsafeLocalFunction

kel*_*dar 1 javascript jquery html5 jquery-mobile windows-8

我正在编写Windows 8 JavaScript Store应用程序(使用Cordova).当我在Windows 8中使用jQuery时,为什么我必须修改jQuery库以使用以下几个函数?

MSApp.execUnsafeLocalFunction
Run Code Online (Sandbox Code Playgroud)

我希望不要这样做,因为每当新版本的jQuery Mobile发布时都会有轻微的不便(幸运的是,通常不会这样) - 项目中是否有设置禁用此功能?

我正在使用jQuery v1.9.1和jQuery Mobile v1.3.2(这是最新的稳定版本).我读到这是固定的jQuery 2.x - 有人可以确认这是否属实?

如果是这样,在我的移动应用程序项目中使用jQuery 2.x是不安全的吗?jQuery v1.3.2中依赖的jQuery v1.9.1中是否存在函数,这些函数在jQuery v2.0中不可用?

Dib*_*ran 6

您需要对某些函数使用MSApp.execUnsafeLocalFunction,因为jQuery以微软的方式添加HTML,不安全.一些HTML元素和属性被认为是不安全的,当jQuery使用例如append或innerHTML将它们不安全地添加到DOM时应用程序崩溃.可以在此处找到不安全的HTML元素和属性.

我知道这个问题在jQuery 2.x中没有修复.我仍然在努力使用不安全的关键字来改变异步页面.当我有解决方法或修复时,我会通知你.

更新:MSOpenTech创建了一个JavaScript动态内容填充程序,可以解决此问题.看看我的博客文章或他们的Github页面.