当前位置:嗨网首页>书籍在线阅读

06-讨论

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

17.1.3 讨论

jStore插件的1.0.3版本包含一个bug,需要改正一个录入错误。 jquery.jstore-all.js 的第403行应该如下:

传统上,在客户端保存数据的唯一选择是cookie。cookie所能保存的数据量有限。现在已经有了更好的替代品。下表包含目前可用的存储机制及其浏览器兼容性。

| 存 储 机 制 | Firefox | Safari | Internet Explorer | | :----- | :----- | :----- | :----- | :----- | :----- | | DOM Storage | 2.0+ | no | 8.0+ | | Gears | yes | yes | yes | | Flash | yes | yes | yes | | SQL Storage API | no | 3.1+ | no | | userData behavior | no | no | 5.0+ |

return !!(jQuery.hasFlash('8.0.0'));

DOM Storage和SQL Storage API是新兴的HTML标准的一部分。它们本身还没有得到跨浏览器支持。Google Gears和Flash是可以用于客户端存储的浏览器插件。Internet Explorer包含用于客户端存储的userData behavior已经有一段时间了。如果需要一个支持所有主流浏览器的机制,基于Flash或者Google Gears的方法能够提供最广泛的支持。但是,这需要用户安装浏览器插件。

警告

幸运的是,jStore(可以从http://plugins.jquery.com/project/jStore下载)提供了一个抽象层,使跨浏览器的客户端存储成为可能,在大部分情况下,它不用依赖浏览器插件。jStore为前面列出的存储机制提供统一的接口。jStore支持人工选择,但是这个例子展示了jStore自动为当前使用的浏览器选择合适存储机制的能力。当在不同浏览器中查看时,这个秘诀显示的是当前选择的存储机制。