【问题标题】:Session Only Cookie Javascript仅会话 Cookie Javascript
【发布时间】:2017-04-08 06:41:44
【问题描述】:

到目前为止,这个 Javascript cookie 脚本运行良好,您只需在 (expiresDays*24) 行中调整您希望 cookie 何时过期。但是,我希望 cookie 在浏览器完全关闭时过期,但当您仍在网站上时 cookie 会持续存在,即使您转到另一个网页或重新加载主页也是如此。我读到这是可行的,可以通过将值设置为 0 或无值来使用会话 cookie 来完成,但是作为 javascript 的学习者,我不知道该怎么做,有没有经验丰富的程序员知道如何调整脚本下面做我想做的事?

<script type="text/javascript">
function setCookie(cookieName, cookieValue, expireDays,isGlobal) {
        var expireDate = new Date();
        expireDate.setTime(expireDate.getTime() + 
(expireDays*24*60*60*1000));
        var expires = "expires="+expireDate.toUTCString();
         if(isGlobal){
            document.cookie = cookieName + "=" + cookieValue + "; " + 
expires+"; path=/";
        }else{
            document.cookie = cookieName + "=" + cookieValue + "; " + 
expires;
        }
    }

    function getCookie(cookieName) {
       var name = cookieName + "=";
       var ca = document.cookie.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 "";
 }

function checkCookie(cookieName) {

    if (getCookie(cookieName) != "") {
        return true;
    } else {
        return false;
    }
}
</script>

【问题讨论】:

标签: javascript session-cookies


【解决方案1】:

我解决了这个问题,只需要替换这一行中的值:

从 (expireDays*24*60*60*1000))

并更改为:

(expireDays"=0"))

否则我保持脚本不变,cookie 会持续访问网站的持续时间,包括您浏览网站时。但是如果你完全关闭浏览器,cookie 就会过期。

【讨论】:

    猜你喜欢
    • 2016-05-26
    • 2012-12-21
    • 2014-09-02
    • 2012-02-26
    • 2013-07-06
    • 1970-01-01
    • 2022-06-17
    • 2012-08-09
    • 1970-01-01
    相关资源
    最近更新 更多