现在的位置: 首页 > 综合 > 正文

跨浏览器本地存储框架(store.js/USTORE.js/Box.js)

2012年11月18日 ⁄ 综合 ⁄ 共 836字 ⁄ 字号 评论关闭

store.js 是一个跨浏览器的数据本地存储 JS 框架,可以在不依赖 cookie 和 Flash 的情况下把数据保存在客户端。由于 IE6/7 和一些老版本的浏览器并不支持 HTML5 的 LocalStorage API,目前在进行 HTML5 相关的开发时,还是有必要使用一些框架,比自己研究各种浏览器的差异省事的多。

IE6/7 中 UserData的限制

在 IE6/7 中,UserData 不能跨目录访问(这点其实和 LocalStorage 里不能跨子域名访问的限制差不多,不过更加严格),因此在 IE6/7 里,目录路径的统一也是确保本地存储数据可以访问的要素。

// 当 URL 为 http://example.com/path1/ 时
store.set('foo', 1)
 
// 当 URL 为 http://example.com/path1/test.html 时访问 "foo",并设置一个新空间 "bar"
// "foo" 的值能正常读取,因为这两个 URL 都在 /path1/ 目录下
store.get('foo') == 1
store.set('bar', 2)
 
// 当 URL 为 http://example.com/path2/ 时, "foo" 和 "bar" 都不能访问
// 因为这两个空间都不是在 /path2/ 目录里设置的
store.get('foo') == null
store.get('bar') == null
 
// 当 URL 为 http://example.com/path1/subpath/ 时, "foo" 和 "bar" 都不能访问
// 因为当前页面位于 path1 的子目录里
store.get('foo') == null
store.get('bar') == null

Store.js 是一个非常轻量和简单的本地存储框架,如果有更加高级的需求的话,也可以尝试使用更加强大的USTORE.js 或者 Box.js

转自:http://www.codecto.com/2011/07/localstorage-cross-browser-store-js/

抱歉!评论已关闭.