2010-10-01 97 views
0

我使用动态库存搜索功能创建Flash网站,其中一堆复选框切换不同类型的服装项目以显示在图库中。例如,用户可以从列表中选择“衬衫”,“牛仔裤”和“手袋”,并且动态阵列图像将被加载到对应于他们的选择的画廊中。SWFAddress和数据持久性

我的问题是找到一种方法来保存用户选择状态,当他们离开并返回到页面。

如果网站有用户数据的SUBMIT按钮,当按下按钮(即mysite.com/#/shirts-jeans-bags/)时,我会将其编码到带有SWFAddress的URL中,但由于客户端要求复选框显示立即结果,我需要一个不同的方法。 (否则,每个复选框点击都会添加到用户的SWFAddress历史记录中)。

我希望网站保存他们的数据,如果用户要导航离开页面,然后推动浏览器的后退按钮。

这是我可以用SWFAddress做些什么吗?最好使用FlashVars?什么是保存数据的最佳方法?

谢谢! -B

回答

0

您可以从javascript onbeforeunload事件中调用Flash影片。不过,我认为最常用的方法是在URL中反映选择的当前状态。用你的话说,每个复选框都会点击更改SWFAdress。

如果您不喜欢SWFAddress历史记录中的许多地址(使用图片库过滤器5次后让我们使用5个不同的网址),并且您希望后退按钮转到其他部分,您可以始终在你的SWF中处理导航的轨迹(转到历史中不是画廊的上一页)。

我希望我能帮上忙。

+0

有没有办法做到这一点?我可以跳过除最近一次之外的所有图库条目? – 2010-10-01 07:29:44

+0

就像Dane所说的,你可以使用SharedObject类,但是,我会用我的建议解决方案。原因是,如果我在搜索框中选择了复选框A,B,E和我想与另一个人分享结果,那几乎是唯一的选择。 – ozke 2010-10-05 07:16:18

0

这里最好的选择可能是SharedObject。这是Flash版本的cookies,可让您将数据存储在用户的计算机上。

其他选项正在更新url,以响应复选框中的任何更改,如您所提及的,或将每个用户的状态存储在服务器上并在更改时进行更新,但我认为SharedObject更简单且更合适。