【问题标题】:Show a hidden div after page reload ( div becomes visible after page reload )页面重新加载后显示隐藏的 div(页面重新加载后 div 变为可见)
【发布时间】:2013-02-20 15:59:24
【问题描述】:

我有一个页面,其中包含几个隐藏的 div 和带有点击事件的按钮,在这些页面上 div 变得可见。

问题是当我重新加载页面时,所有的 div 都被再次隐藏了。

实际上,当我单击某些按钮时,某些 div 会变得可见,但当我重新加载页面时,所有 div 都会再次不可见。

我可以让页面重新加载前可见的 div 在重新加载后可见吗?

例如http://jsfiddle.net/DxKCj/1/.

【问题讨论】:

  • cookie 或本地存储
  • 或网址哈希(http://example.com/#show:div1,div2
  • 你必须记住用户事件 .. 所以在点击时触发一个事件,进行 Ajax 调用,servlet 将其存储在会话中.. 重新加载时从会话中读取它

标签: javascript jquery reload page-refresh


【解决方案1】:

当然,它们将再次隐形。这就是 HTML/JavaScript 的行为方式。当您重新加载页面时,浏览器会丢弃当前状态并重新“编译”页面。这就像运行一个简单的 C 程序,退出它,然后再次运行它。如果要保存 Div 的状态,则必须将其保存在某个地方。您可以使用 HTML5 本地存储或在 cookie 中保存它。您可以通过 JavaScript 完成这两项工作。

【讨论】:

    【解决方案2】:

    是的。不要打扰使用会话 - 只需设置一个 cookie。谷歌“javascript setcookie”,你会找到你需要的一切——存储哪些 div 在 cookie 中可见,然后在页面加载时检查 cookie 值。 `

    【讨论】:

      【解决方案3】:

      查看以下答案:

      create session with jquery?

      您可以对将创建会话的 PHP 页面进行 ajax 调用。然后可以在页面加载时做一个简单的 IF 看看 session 是设置为 1 还是 0。如果是 1,显示 div,如果不是,删除它。

      只需在用户单击按钮时进行 AJAX 调用。如果您需要更具体的代码,请告诉我

      【讨论】:

      • 在服务器上保存状态不是必须的,可以在本地完成。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-20
      • 2013-11-09
      • 1970-01-01
      • 2015-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多