3

我正在使用 HTML 5 制作 Windows 8 Phone 应用程序。

我正在使用 localStorage 来保存一些小的值,如下面的代码所示,我已经在所有浏览器中测试了我的代码并且它工作得非常好,然后我创建了一个新的 HTML 5 项目并将我的代码添加到项目中并运行应用程序.

在下面的代码中,我怀疑这里的 localStorage 不起作用,我想知道为什么?

$("#cow_btn").click(function(){
    localStorage.selected_category = "cow";
    window.location.href = 'animals.html';
}); 

我是怎么得出这个结论的?

1 - 我尝试在 localStorage.selected_category = "cow" 之前和之后发出警报;行,这里显示了第一个警报,但未显示第二个警报。

$("#cow_btn").click(function(){
    alert("hello1");
    localStorage.selected_category = "cow";
    alert("hello1");
    window.location.href = 'animals.html';
}); 

2 - 接下来我尝试删除该行本身,然后我的 window.location.href = 'animals.html'; 之前没有工作现在工作了。

$("#cow_btn").click(function(){
    window.location.href = 'animals.html';
}); 

这里可能是什么问题?我的整个应用程序可以在 Firefox、Chrome 甚至 Internet Explorer 10 上流畅运行。

请分享您对此的看法。如何使 localStorage 在我的 HTML 5 Windows 8 Phone 应用程序上工作?

笔记:

我正在使用以下 js - jquery.min.js & jquery.mobile-1.2.0.min.js

4

3 回答 3

3

我在我的 Windows 8 phonegap 应用程序中看到了完全相同的行为。该问题仅在使用 jquery mobile 时出现。您能否尝试在没有 jquery mobile 的情况下运行您的应用程序?

一旦我删除 jquery 移动本地存储就可以正常工作。

于 2013-02-12T20:55:34.207 回答
2

WP8/IE10 完全支持 localStorage。要仔细检查这个试试这个

alert("typeof localStorage=" + typeof window.localStorage);

PS。以下可能会帮助您解决问题

Windows Phone 8 IE10 Javascript 调试

于 2013-02-11T08:54:42.607 回答
-2

Windows Phone 将不支持您的编码风格。请务必使用 setItem / getItem 命令,如 WP8/IE10 中的 localStorage.key = value; 即使很难,也不支持命令,它们是 W3C 标准。

于 2013-06-27T07:05:16.993 回答