月光博客

青青子衿, 悠悠我心, 但为君故, 沉吟至今

« 使用Google Maps API集成Panoramio和维基百科Google Ocean谷歌海洋前瞻 »

JavaScript通过Flash保存本地数据

  目前流行的网络应用中,有不少应用涉及到保存数据到本地的功能,用于应付网络中断或上不了网的情况,例如Google Reader的Gears离线功能,今天我介绍一种通过Flash保存数据到本地的一个很简单的方法。

  Flash程序目前有保存和载入外部文件的功能,我们可以在JavaScript中调用Flash,实现JavaScript的离线读取和写入数据到本地硬盘的功能,有个日本人写了一些代码实现了这个功能,我现在将其翻译一下,供大家参考。

  首先点这里下载这个文件,将其解压缩到本地硬盘。

  文件里面的test.html为演示文件,大家可以参照这个文件学习。

  首先将下面三个文件复制到WEB目录下

  swfobject.js ,save2local.swf ,save2local.js

  然后将以下代码复制到你的HTML文件中。

<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript" src="save2local.js"></script>

  接着,就可以写自己相关的保存代码了,具体例子如下:

<script type="text/javascript"><!--
function test() {
  save2local.saveData("key","value");
  alert( save2local.loadData("key") );
}
--></script>
<a href="javascript:test()">williamlong test, click here .</a>

  这种方法可以简单的实现JavaScript保存本地数据的功能。



原创文章如转载,请注明:转载自月光博客 [ http://www.williamlong.info/ ]

本文链接地址:http://www.williamlong.info/archives/1530.html
  • 文章排行:
  • 1.音乐天堂
  • 其实保存成Cookie也不错,不必非要保存成本地数据的,只要能下次方便读取即可。Cookie用户还能控制。
  • ip: 116.230.39.*  2008-10-13 23:16:44   回复该留言
  • 11.黑手
  • 支持月光,希望写多点这样的技术性的文章
  • ip: 121.33.116.*  2008-10-14 0:04:09   回复该留言
  • 17.hiswing
  • 三年前做flash + javascript的项目,也实现了本地保存数据。不过,浏览器认为这是不安全的,会弹出警告框。有些杀毒软件也会提示病毒信息。唯一的办法就是设置对访问的网站完全信赖。
  • ip: 60.191.5.*  2008-10-14 8:54:17   回复该留言
  • 33.潇洒雨水
  • 路过,学习了,呵呵,去试过了,但好像都没成功....不知道方法是不是哪里出错了....
  • ip: 121.33.146.*  2008-10-14 15:42:38   回复该留言
  • 36.AFan
  • Flash应用越来越高.级了,
    专.注Flash应用。朋友的网.站.
  • ip: 121.77.219.*  2008-10-15 0:14:33   回复该留言
  • 39.Murray.cao
  • 关键是数据量的问题,Flash保存的数据量应该比Cookie的要大,对于数据应用来说,这是个不错的方法。
  • ip: 61.132.138.*  2008-10-17 8:56:18   回复该留言
  • 41.Hbomb
  • flash 10下安全级别高了,像是这个东西不起作用了
  • ip: 121.229.129.*  2009-1-3 12:13:39   回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 跟随我的推特:跟随我的推特
  • 跟随新浪微博:跟随新浪微博
  • 通过Google订阅本站
  • 通过鲜果订阅本站
  • 通过电子邮件订阅本站

站内搜索

热文排行

最新评论及回复

最近发表

网站收藏

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循“署名-非商业用途-保持一致”的创作共用协议.

This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.