【问题标题】:How to remove something from localStorage after a period of time? [duplicate]一段时间后如何从localStorage中删除一些东西? [复制]
【发布时间】:2018-11-13 08:31:16
【问题描述】:

我有一个基本表单要求加入一个电子邮件列表,当有人提交时我会消失,并且不会通过在 localStorage 中隐藏一个 ID 重新出现。我还有一个按钮,如果用户不想注册电子邮件,您可以按下该按钮使 div 消失,这也是在 localStorage 中完成的。这两个点击事件都会触发'hideEmail()'

是否可以通过检查 id 何时放置在 localStorage 中以及是否超过 x 时间将其更改回来来反向隐藏 id?

function hideEmail() {
    $('#footer').hide();
    localStorage.setItem('hidden', 'true'); //store state in localStorage
}

$(document).ready(function(){
    var hidden = localStorage.getItem('hidden');
    if(hidden === 'true'){
        $('#footer').hide();
    }
});

【问题讨论】:

标签: javascript jquery local-storage


【解决方案1】:

您是指,比如说,当用户关闭页面时,当用户重新打开页面时,检查用户是否超过了允许的时间,以便取消隐藏页脚?

如果是这样,您希望使用的是 cookies。您可以这样定义它们:

var d = new Date();
var username = "any_username";
// Set cookie to expire in, say, 4 days. Then you can do an if statement and check if cookie is expired, so you can set hidden to false.
document.cookie = "username=" + username + ";expires=" + d.getDate()+4+";";

【讨论】:

  • 我正在尝试避免使用 cookie,向本地存储事件添加时间戳可以解决我的问题,谢谢
猜你喜欢
  • 2023-03-27
  • 1970-01-01
  • 2014-12-15
  • 1970-01-01
  • 2019-05-09
  • 1970-01-01
  • 1970-01-01
  • 2020-01-08
  • 2020-01-22
相关资源
最近更新 更多