除了Chrome之外,Cookie和HTML5本地存储都不能正常工作

时间:2011-02-09 19:30:19

标签: javascript html5 cookies cross-browser local-storage

我正在开发一个javascript驱动的工具,它将在本地存储用户的选择,然后在下次导航到页面时重新填充。它在Chrome中运行良好,但在IE8或Safari中完全没有。

我尝试使用标准的javascript和使用jquery.cookie.js插件将这些信息存储在cookie中,而且最近我尝试使用本地存储。我存储了一大堆XML,所以我的理论是,它可能太大而无法存储在cookie中,但是对于本地存储来说,它不可能太大。

我正在localhost下的本地IIS上测试它。任何人都可以想到其他浏览器无法正常工作的原因吗?我发现奇怪的是它会影响cookie和本地存储。我只能认为它是某种安全设置限制任何类型的本地存储,cookie或其他。

我已经玩过IE中的设置,IIS中的设置,但无法解决它。任何想法或想法都会受到欢迎!

此致

马特

2 个答案:

答案 0 :(得分:1)

XML是字符串,还是像DOM引用这样的对象?我相信IE8的localStorage只能将字符串作为键和值...或者可以自动转换为字符串的主要值......所以你必须对该对象进行字符串化。

如果您担心IE8中的大小限制,请检查localStorage.remainingSpace(IE特定属性)的值。

如果在Chrome中有效,我不确定为什么Safari不适合你。也许它只能采取字符串。

答案 1 :(得分:0)

你是如何保存数据的?如果它在Chrome中有效,我很惊讶它在Safari中不起作用。使用开发人员工具查看localstorage中的内容。在firefox中使用firebug。

换句话说,弄清楚它首先失败的地方。