Javascript 如何将单击事件保存到本地存储以隐藏用户弹出的窗口。他需要单击“接受”一次。如果他单击取消,弹出窗口将再次打开

Javascript 如何将单击事件保存到本地存储以隐藏用户弹出的窗口。他需要单击“接受”一次。如果他单击取消,弹出窗口将再次打开,javascript,Javascript,如何将单击事件保存到本地存储以隐藏用户弹出的窗口。他需要单击“接受”一次。如果他单击取消,弹出窗口将再次打开 喋喋不休 接受 取消 #覆盖层{ 位置:固定; 排名:0; 左:0; 显示:块; 宽度:100%; 身高:100%; 背景:rgba(0,0,0,0.45); z指数:999; -webkit动画:淡入淡出.6s; -moz动画:淡入淡出.6s; 动画:淡入淡出。6秒; 溢出:自动; } .弹出窗口{ 颜色:#525252; 背景:#0c2333; 最高:20%; 左:0px; 右:

如何将单击事件保存到本地存储以隐藏用户弹出的窗口。他需要单击“接受”一次。如果他单击取消,弹出窗口将再次打开


喋喋不休
接受
取消
#覆盖层{
位置:固定;
排名:0;
左:0;
显示:块;
宽度:100%;
身高:100%;
背景:rgba(0,0,0,0.45);
z指数:999;
-webkit动画:淡入淡出.6s;
-moz动画:淡入淡出.6s;
动画:淡入淡出。6秒;
溢出:自动;
}
.弹出窗口{
颜色:#525252;
背景:#0c2333;
最高:20%;
左:0px;
右:0;
字体大小:14px;
保证金:自动;
宽度:65%;
高度:600px;
最小宽度:350px;
最大宽度:100%;
位置:绝对位置;
填充:40px 65px;
z指数:1000;
}

您可以使用JQuery提供解决方案吗?谢谢

您不需要jQuery来操作本地存储。这里有一个简单的例子:

$(function() {
  if (localStorage.getItem('popup_accepted')) {
    $('#overlay').remove();
  } else {
    $('#accept').click(function() {
      localStorage.setItem('popup_accepted');
      $('#overlay').remove();
    });

    $('#cancel').click(function() {
      $('#overlay').remove();
    });
  }
});

我无法创建工作代码段,因为我们无法访问代码段中的
localStorage

使用Javascript函数获取和设置cookie


文件
#覆盖层{
位置:固定;
排名:0;
左:0;
显示:无;
宽度:100%;
身高:100%;
背景:rgba(0,0,0,0.45);
z指数:999;
-webkit动画:淡入淡出.6s;
-moz动画:淡入淡出.6s;
动画:淡入淡出。6秒;
溢出:自动;
}
.弹出窗口{
颜色:#525252;
背景:#0c2333;
最高:20%;
左:0px;
右:0;
字体大小:14px;
保证金:自动;
宽度:65%;
高度:600px;
最小宽度:350px;
最大宽度:100%;
位置:绝对位置;
填充:40px 65px;
z指数:1000;
}
开放覆盖
喋喋不休
接受
取消
$(函数(){
var storageName='rememberMe';
$('#btn')。在('click',函数(){
if(localStorage.getItem(storageName)){
返回false;
}否则{
$(“#覆盖”).show();
}
});
$('#accept')。在('click',函数(){
setItem(storageName,true);
$(“#覆盖”).hide();
});
$('#取消')。在('单击',函数(){
$(“#覆盖”).hide();
});
});

它在任何基于web的IDE中都不起作用,因为它们不允许编写任何cookie。你可以在你的本地机器上测试它。当问题是关于本地存储的时候,为什么要用cookies来解决呢?哦,我错过了那部分。。让我更改它。正如我在自己的回答中所说的,由于以下错误,代码段无法工作:
SecurityError:操作不安全。
(我们无法访问代码段中的本地存储)。但是你的代码现在很好。
$(function() {
  if (localStorage.getItem('popup_accepted')) {
    $('#overlay').remove();
  } else {
    $('#accept').click(function() {
      localStorage.setItem('popup_accepted');
      $('#overlay').remove();
    });

    $('#cancel').click(function() {
      $('#overlay').remove();
    });
  }
});