在使用localStorage的Internet 9中,我有一个有趣的问题。我在我的web项目中使用客户端本地化,使用i18next库,作为本地化存储,我们决定使用localStorage。我们正在加载所有的本地化在用户第一次访问(整个本地化的一种语言~450 We )。所有浏览器都运行良好,除了Internet 9。过了一段时间后,当它试图从服务器端加载本地化时,我开始接收错误的"SCRIPT5022: DOM Exception: QUOTA_EXCEEDED_ERR (22)"。当我尝试- localStorage.remainingSpace时,它返回:120776
但是,当我试图使用命令localStorage来查看存储在JSON.stringify(localStorage)中的内容时,它返回- "{}"。因此,没有任何东西存储在localStorage中,但是它写到只有120 is是空闲的。当我在任何其他网站上尝试,命令- localStorage.remainingSpace它显示- 5000000。而且,localStorage.clear()并没有帮助停止接收该消息-- "SCRIPT5022: DOM Exception: QUOTA_EXCEEDED_ERR (22)"。
问题是:“为什么internet 9认为localStorage几乎是满的,而它却不包含任何数据?”
谢谢你的预支。
发布于 2014-11-18 21:10:45
知道IE有多令人沮丧。我遇到了一个类似的问题。
试试这个这个jquery插件。还可以查看这 IE9问题是否与您的用例相匹配,插件本身尝试设置实际cookie之前的各种备份。它们将几种持久化机制集成在一个无缝API中,而不管浏览器是什么浏览器,只要它在支持的列表中,它就会在大小限制范围内工作。
如果450 so不合适,请尝试创建一个服务器支持的回退,以便主动获取本地存储中缺少的所需密钥,这样就不会传输整个450 k字典。
祝你好运!
https://stackoverflow.com/questions/26842210
复制相似问题