1

我们想在一个新项目中使用 HTML5 sessionStorage(或类似的东西),但你不能在某些浏览器上依赖它。有这个项目 ( http://code.google.com/p/sessionstorage/ ) 提供了一个适用于很多地方的实现,但奇怪的是它不使用 HTML5 版本(如果可用)。它总是做自己的事情。

GitHub上 有这个项目(https://github.com/jas-/jQuery.handleStorage )但它的仿真层是 cookie(哎呀!).

注意:以上内容不正确,请参阅下面 jas- 的答案,他解释说我对那个项目有误。

有没有更好的东西可以提供像第一个项目一样的良好实现,但如果它可用则自动回退到 HTML5?如果可用,我们可能会改进第一个项目以自动回退到 HTML5,但如果已经有一个好的解决方案,我们宁愿不构建它。

4

4 回答 4

1

我知道你说过你想要一个解决方案,但这样的事情有什么问题?

if(!window.sessionStorage){
    $.getScript("/google_code_sessionStorage.js");
}
于 2011-07-14T15:52:44.483 回答
1

这有几个 YUI 实用程序,具体取决于您使用的是 2 还是 3:

如果可用,两者都将使用 HTML5 会话存储。

于 2011-07-14T16:08:35.867 回答
1

蒙施,

我意识到这篇文章已经有好几年了,但我想澄清你提到的项目,我是jQuery.handleStorage的作者,它不使用 cookie 作为其默认的客户端存储方法。

如果您阅读该项目的文档,您会看到它的三个客户端存储选项之一是在客户端浏览器不支持 HTML5 localStorage 和/或 sessionStorage API 的情况下使用 cookie。

话虽如此,如果您需要更强大和灵活的客户端存储工具,我会推荐secStore.js,因为它不隐式需要绑定到表单,支持 HTML5 客户端存储选项,在旧版浏览器的情况下优雅地降级为 cookie并可选择使用SJCL API 为可能的敏感数据提供透明加密。

于 2014-02-11T02:59:37.877 回答
0

我最终对此进行了更多研究,因为我喜欢我得到的两个答案,但我想要更像 YUI 3: Storage Lite 的东西,但不需要 YUI。与框架无关或对 jQuery 友好的东西对我们来说会更好。

最后,我发现了几种可能性,其中一种是我们将尝试使用的最突出的:草坪椅

还考虑:store.jsAmplifyJS

于 2011-07-26T15:02:45.523 回答