HTML5本地存储后备解决方案
我正在寻找可以localStorage
在不具有本机支持的浏览器上模拟的javascript库和代码。
基本上,我想对我的网站进行编码以localStorage
用于存储数据,并且知道它仍然可以在本身不支持它的浏览器上运行。这意味着库将检测是否window.localStorage
存在,并在存在时使用它。如果不存在,那么它将通过在window.localStorage
名称空间中创建自己的实现来创建某种本地存储的后备方法。
到目前为止,我已经找到了以下解决方案:
- 简单的sessionStorage实现。
- 使用cookie的实现(对此想法不满意)。
- Dojo的dojox.storage,但这是它自己的事情,不是真正的后备。
我知道Flash和Silverlight也可以用于本地存储,但是在将它们用作标准HTML5localStorage的后备时并没有发现任何东西。也许Google Gears也具有此功能?
请分享您发现的所有相关库,资源或代码段!我对纯JavaScript或基于jquery的解决方案特别感兴趣,但我猜这不太可能。
回答:
我使用PersistJS(github存储库),它对您的代码无缝且透明地处理客户端存储。您使用单个API并获得对以下后端的支持:
- flash:Flash 8永久存储。
- gears:基于Google Gears的持久存储。
- localstorage:HTML5草案存储。
- whatwg_db:HTML5草案数据库存储。
- globalstorage:HTML5草案存储(旧规范)。
- ie:Internet Explorer用户数据行为。
- cookie:基于cookie的持久性存储。
可以禁用其中任何一个,例如,如果您不想使用cookie。有了这个库,您将在IE5.5+,Firefox2.0+,Safari3.1+和Chrome中获得本地客户端存储支持;以及浏览器具有Flash或Gears的插件辅助支持。如果启用cookie,它将在所有功能中起作用(但限于4kB)。
以上是 HTML5本地存储后备解决方案 的全部内容, 来源链接: utcz.com/qa/415217.html