HTML5 LocalStorage 似乎已损坏
Posted
技术标签:
【中文标题】HTML5 LocalStorage 似乎已损坏【英文标题】:HTML5 LocalStorage seems to become corrupt 【发布时间】:2013-05-23 15:31:45 【问题描述】:我正在使用 BootUp.js (https://github.com/TradeMe/bootup.js) 将 CSS 和 javascript 文件加载并存储到 html5 LocalStorage 中。该网站以移动设备为重点,因此节省时间和提高速度非常棒!但是,我注意到奇怪的情况是 CSS(从未注意到它与 JS)在存储中损坏,因此网站呈现可怕的状态,直到存储被清除并从服务器重新获取 CSS 文件。
我在 iPhone 4 (ios 6) 上的 Safari、Galaxy S3 上的 Chrome 和 Nexus 7 上的 Chrome 上看到这种情况非常偶发 - 所以它似乎并不局限于任何特定的设备、浏览器或操作系统。这是任何人以前遇到过的问题吗?数据是否有可能只是以某种方式损坏? WebKit 是否有任何已知问题(我猜)可能导致它?
我计划通过存储某种可以在 JS 中生成的校验和来实现一种解决方法,以确保数据完全存在。如果没有,请将其清除并从服务器获取。
【问题讨论】:
我不熟悉启动,但它会执行某种形式的 CSS 缩小吗?这可以解释为什么 css 而不是 js 会受到影响。 我的 CSS 已经被缩小了。 Bootup 只是将它作为字符串存储在本地存储中。 【参考方案1】:我会首先使用这个: http://arty.name/localstorage.html
由于明显的内存限制,移动浏览器往往会减少存储空间。您的 CSS 和 Javascript 可能太大,即使在缩小时也是如此。
对于这种行为,我能想到的另一件事是localStorage
在开始保存并同时刷新页面时可能会损坏。我不熟悉浏览器的具体工作原理,但我猜它们可能会在中间停止保存。
另外,请看这里: http://hacks.mozilla.org/2012/03/there-is-no-simple-solution-for-local-storage/
【讨论】:
以上是关于HTML5 LocalStorage 似乎已损坏的主要内容,如果未能解决你的问题,请参考以下文章