问题标签 [sessionstorage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何将事件绑定到 sessionStorage?
我可以成功地将事件绑定到 localStorage 的更改(使用 jquery):
如果我使用 sessionStorage,该事件将不会触发:
为什么是这样?
c# - 从服务器端访问网络存储 - 可能吗?
我已经在网络存储(会话和/或本地)中存储了一些字符串,并且想知道是否可以在页面加载或服务器端初始化时检查这些存储的字符串(在我的例子中是 asp.net c#)。 ..因此,例如,我将知道不要从数据库中重新获取数据并使用上次页面加载时浏览器中已经存在的内容。
javascript - 通过索引读取 localStorage 值
ls.getItem[i]
使用索引而不是键使 Chrome 中的 localStorage 读取性能翻倍ls.getItem('key')
资料来源:这篇推文和一些人写的一些很棒的 JavaSciript 库的演讲(幻灯片 19)。我想这些人知道他们在说什么,所以我想知道为什么这对我不起作用:
我是不是误会了什么?根据那次谈话,最后一个方法调用应该返回'Hello world'
not undefined
。
他们也链接到这个 JS Bin,但是当通过索引读取值时,我仍然得到undefined
.
编辑:我知道如何使用 localStorage 正确读取索引,我在询问getItem
索引。似乎谈话只是暗示了错误的用法?另外,我想知道为什么 32 人在没有测试的情况下转发了该用法。这些事情让我很生气。
html - HTML5 sessionStorage 限制?
关于 HTML5 的 sessionStorage 的几个问题:
- localStorage 的 5MB 限制是否包括 sessionStorage?(即,它真的是 WebStorage API 的 5MB 限制吗)
- 如果没有,sessionStorage 是否有类似于 localStorage 的最大大小限制?
我在另一个 SO 问题中找到了这个网站http://dev-test.nemikor.com/web-storage/support-test/,我想知道数据是否仍然相关?
javascript - (临时)Web App 中 JSON 搜索结果的存储
我正在为我的 Web 应用程序(仅限 HTML、JS 和 CSS)开发搜索功能。我正在使用 jQuery 的 .getjson() 方法从提要中检索数据并将这些结果显示在页面上。在 .each() 语句中,我将 HTML 标记添加到结果中,使一些元素链接到外部源。
问题是当访问者在我的 Web 应用程序上启动搜索并单击从结果到外部页面的链接,然后使用浏览器上的后退按钮返回结果页面时,所有搜索结果都被清除并需要启动另一个搜索。
我想暂时保存搜索结果,因此如果用户单击结果中的链接,然后按“返回”按钮返回应用程序,则所有结果都将可用,而无需新的搜索。
更进一步,如果过去搜索的结果仍然存在,那么如果访问者继续按“后退”按钮,他们可以看到所有以前的搜索(当然有给定的限制),这也很酷。
HTML5 sessionStorage 似乎很适合这个,但我发现的信息指向一个乏味的编码解决方案。我不能将所有 json 结果保存为 JS 对象,并在访问者按下后退按钮时由我的每个语句重新呈现它们吗?我绝对愿意使用代码库或插件来解决这个问题。
jquery - PhoneGap : 通过递增 sessionStorage 从表中检索下一个数据
我在数据库中有一个记录的 ID (1),每次单击“NEXT”按钮时,我希望将 ID 增加到 2 并检索下一个数据。我将 ID 存储到 sessionStorage.ID 中,稍后当我检索它时
sessionStorage 应该等于 2,但它显示为“11”。我该如何解决这个问题?
javascript - 奇怪的 sessionStorage 行为
好的,请耐心等待,我会尽可能详细地解释这个问题。
我有 3 个 HTML(和适当的 .js)文件。我可以向 sessionStorage 添加内容,当我位于任一 HTML 文件中时,我会显示 sessionStorage 的内容。我在最新版本的 firefox 上本地运行文件,据我所知,它支持 file:// 中的 sessionStorage 所以,一切都很好,我可以在 HTML1 中向 sessionStorage 添加东西并转到 HTML2 和数据是正确显示。我得到了 sessionStorage 的概念,一切都很好。
但这就是奇怪的地方:当我在 HTML1 中向 sessionStorage 添加内容并通过 a-href 转到 HTML2 时,sessionStorage 的内容就在那里。但是,如果我在 url 栏中单击并按 enter,则内容将丢失。会话存储为“空”。我回到 HTML1 并按 ctrl+r(重新加载),仍然为空。但是当我在 url 栏中单击并按 Enter 时(当我在 HTML1 页面中时), sessionStorage 内容会返回。
我已经进行了几次检查,似乎当我在 url 栏中单击并按 Enter 时,会创建另一个 sessionStorage 实例。
但是,如果我将项目上传到某个服务器上,则不会发生这种情况。我想知道为什么 - 如果 Firefox 支持 sessionStorage - 当我在本地运行应用程序时会发生这种情况,那里到底发生了什么?感谢您的任何解释。
html - 如何在子窗口中唯一标识 iframe?
我们有以下情况:
Iframe 由一个域 (A) 中的页面嵌入和控制。
我们无权更改域 A 的代码。
Iframe 中的内容是从另一个域 (B) 传递的。
我们正在使用会话存储来处理 iframe 中的所有会话变量。
有一个 Comet 风格的推送正在发生,以向 iframe 提供实时更新,并且为了完成这项工作,我们需要能够唯一地识别每个 iframe。
为此,我们将唯一 ID 存储在 sessionStorage 变量中,当然问题就在这里。
一切都很好,直到域 A 使用“window.open”打开一个子窗口,我们最终得到以下场景。
加载 B(2) 时,会话存储按如下方式处理:
所以......唯一ID在大多数浏览器中被克隆(或在Opera的情况下共享)
在Opera中,因为它似乎共享会话存储,所以可能没有解决方案。
在Firefox中,我们就像一个全新的窗口,所以没有问题。
在Safari和Chrome中,我们可以执行以下操作
在IE中,我们无法访问 window.opener.frames.THE_IFRAME,因为由于跨域限制,它根本不允许我们访问 window.opener 中的任何内容。
任何关于如何在 IE 中进行这项工作的建议(我们可以在没有 Opera 支持的情况下生活),或者总体上更好的解决方案,将不胜感激。
html - JSF/PrimeFaces 与 HTML5 存储方法的兼容性
JSF / PrimeFaces 是否支持 HTML5 存储方法(sessionStorage / localStorage)?