不可见的 Flash:通过使用不可见的 Flash Player 增强 Web 应用程序
2010-07-09 00:00:00 来源:WEB开发网对于 save 方法,传递了一个 JavaScript 对象作为 value 参数。这可以是任意对象,甚至可以具有一个深度嵌套的结构。然而,只会传递对象的数据。如果该对象包含函数,那么将不会被传递。请注意 load 方法将返回所有来自 SWF 的内容。是什么内容?答案很简单:您发送的任何内容。如果您存储的是数字或字符串等标量值,那么将返回这些内容。如果存储的是复杂的对象,那么将返回该 JavaScript 对象 — 不需要解析或其它操作。一个例外是假如对象包含函数,那么肯定不会被序列化并保存。因此只会返回对象中的数据,而不是其他内容。以上总结了使用 Flash 进行本地存储所需掌握的全部内容。在学习使用 Flash 操作跨域 Ajax 之前,了解一些可作为替代选择的本地存储方法。
其他的本地存储选择
我提到 Flash 是面向客户端存储的一个有吸引力的选择,可以代替 HTTP cookies。尽管如此,还有两项 Web 技术采用了与 Flash SharedObjects 一样的范式。事实上,长期以来各种浏览器都提供相似的 API。但各浏览器的 API 不尽相同。因此您可以先了解一下各个浏览器,然后使用特定的 API。Flash 提供了一致的替代方案。本文中开发的代码几乎可以运行于所有浏览器:Internet Explorer 6 和 Firefox 2,以及这些浏览器的最新版本。更新的版本提供一致的解决方案。HTML 5 规范包含一个 localStorage API。主流浏览器的最新版本都实现了这个 API,包括 IE 8 和 Firefox 3.5。因此如果只担心浏览器的话,localStorage 将是一个可用的选项。如果担心旧的浏览器(IE 6、IE 7 等等),那么使用 Flash 可能会更容易。现在,看看 Flash 能够实现的新功能,跨域 Ajax。
更多精彩
赞助商链接