代码之家  ›  专栏  ›  技术社区  ›  Sniffer

替代曲奇

  •  9
  • Sniffer  · 技术社区  · 16 年前

    我构建了可移植的HTML/Javascript原型,这些原型旨在通过电子邮件/SharePoint进行压缩和共享。这里的关键词是“可移植的”——不需要服务器来运行这些prorotypes——只需要一个支持javascript的浏览器。没有数据库。

    一些原型要求我保存数据(只是为了展示潜在的功能)。我现在通过使用cookies来实现这一点。这对于Firefox、Chrome等来说似乎很好,但Internet Explorer的工作方式似乎有所不同。

    一旦在IE6和7中达到域中所有cookie的最大大小4096字节(我还没有测试8个),cookie就停止工作。一旦达到这个限制,即使是从cookie中读取也会停止,原型也会中断。

    是否有其他方法可以在不使用服务器和数据库的情况下保存数据?

    任何想法都会受到极大的赞赏。

    5 回复  |  直到 11 年前
        1
  •  6
  •   Stephen Wrighton    16 年前

    将数据存储在隐藏字段中(如果需要,甚至多个字段)。

    将用于从cookies中读取的代码包装到一个单独文件中的类/函数中,然后您可以轻松地将这些文件替换为实时/示例实例——可能与注释一行和取消注释另一行一样容易。

    由于注释中的请求而编辑 : 如果您将隐藏字段中的数据推送到多个页面上,这将在多个页面上工作。如果您不想从一个页面到下一个页面发帖,那么您可以将页面包装成一个框架,然后让隐藏字段位于一个不显示的框架元素中(在这种情况下,字段在技术上不需要是隐藏字段)。

    这就是访问的页面有一个框架标记,它指向两个不同的页面。第一页是应用程序本身,它占据了所有可见的不动产。第二个页面只是一个页面,它将包含一个或多个控件,这些控件将保留数据,而第二个页面完全不可见(对用户而言)。因为这些页面都是同一个“域”的一部分,所以框架子级可以很容易地与它的一个兄弟级对话,并将数据读/写到隐藏页面的字段中。

    绕过cookie限制的方法是,文本输入字段在技术上只受计算机内存和网络吞吐量超时的限制。例如,我以前看到过一个隐藏字段,其中包含价值20MB的数据(想想邪恶视图状态中最邪恶的)。

        2
  •  5
  •   jldupont    16 年前

    虽然目前尚未广泛提供,但有HTML5 Webstore/LocalStorage。

        3
  •  5
  •   Chris    16 年前

    退房 YUI Storage .

        4
  •  3
  •   Adam Crossland    16 年前

    Dojo Storage 最多可节省10万

        5
  •  0
  •   Community Mohan Dere    9 年前

    HTML5存储API的情况自jldupont询问并初步回答后有所进展。 here .

    目前,Opera Mini是唯一不支持它的主要浏览器。

    Source ,访问日期:2013年8月22日。