微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检查Cookie是否存在,如果是,则执行任何操作,如果否,则设置Cookie

如何解决检查Cookie是否存在,如果是,则执行任何操作,如果否,则设置Cookie

因此,im尝试执行的操作是检查cookie是否存在(例如,accepted = yes)。如果未设置,它将不返回任何内容;如果未设置,它将执行一些脚本并设置accepted = yes cookie。这样,下次访问者就不会看到弹出窗口。

var cookie = document.cookie;
if (cookie = accepted=yes) {

} else {
    document.cookie = "accepted=yes";
}

那是我发现的代码

解决方法

您可以使用getCookie和setCookie函数

function setCookie(cname,cvalue,exdays) {
  var d = new Date();
  d.setTime(d.getTime() + (exdays*24*60*60*1000));
  var expires = "expires="+ d.toUTCString();
  document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}

function getCookie(cname) {
  var name = cname + "=";
  var decodedCookie = decodeURIComponent(document.cookie);
  var ca = decodedCookie.split(';');
  for(var i = 0; i <ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length,c.length);
    }
  }
  return "";
}

示例

var user = getCookie("username");
  if (user != "") {
    alert("Welcome again " + user);
  } else {
    user = prompt("Please enter your name:","");
    if (user != "" && user != null) {
      setCookie("username",user,365);
    }
  }

参考:W3Schools https://www.w3schools.com/js/tryit.asp?filename=tryjs_cookie_username

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。