使用隐藏框架在页面之间存储或传递数据

时间:2011-01-21 19:39:36

标签: javascript html5 iframe

我们需要实现一种机制来在同一会话中的网页之间保留信息。客户端有很多信息,并且在请求之间来回传递给服务器是我们想要避免的。 HTML5本地存储是一种选择。

提到的另一个选项是“使用隐藏数据的隐藏框架”。我不确定这个选项到底意味着什么。

  • 这是否意味着保留一个隐藏的框架来保存跨页面请求的数据?
  • 这将如何实现?有没有我可以查看的jquery插件或示例代码?
  • 有什么优点和缺点?

2 个答案:

答案 0 :(得分:1)

我不知道您可以将数据保留在主页面中并使用隐藏的iframe / frame来保存数据。这是因为一旦重新加载主页面(当你转到另一个页面时),iframe中的所有内容都将丢失。

您基本上将主页用作数据存储位置。在主页面上,您将添加iframe。用户将通过iframe与您的网站进行互动。从用户的角度来看,没有区别。您可以通过写入父框架(主页面)来保留信息。由于主页永远不会重新加载,因此您可以在其中保留数据。

我不知道有任何Javascript库可以做到这一点;我会看看。

请记住,这可能会影响搜索引擎优化和可能的导航(不是后退/前进按钮)。另一点,正如Guffa指出的那样,用户无法共享指向您网页的链接,因为地址栏中的网址永远不会发生变化(所有互动都是通过iframe)。因此,当您的用户向某人发送链接时,他们最终将会出现在第一页。

答案 1 :(得分:0)

您不能将帧从一个页面保留到另一个页面,因此使用它的唯一方法是使帧覆盖窗口并加载帧中的实际页面。这样,您可以将数据保留在周围页面中,不会被替换。

这当然意味着你实际上永远不会离开页面。当内容更改时,位置栏中的URL保持不变,因此您无法为特定页面添加书签或与他人共享。搜索引擎将链接到内容页面而不是框架,因此任何以这种方式查找页面的人都将在不起作用的框架页面上结束。