js-cookie Cookie值不会在刷新

时间:2016-06-26 23:12:09

标签: javascript cookies

我有一个网页上有广告。我正在使用js-cookie来管理我的cookie

Link to JS-Cookie

当用户首次导航到我们的网站时,我希望javascript检查名为'advertisement'的Cookie,如果它不存在,则创建一个值为'open'

的Cookie
    //Check for cookie. if it doesnt exist, create it
    var cookie = Cookies.get("Advertisement");
    alert(cookie);
    if (cookie == "undefined" || cookie == null || cookie == "" || cookie == "null") {
        CreateCookieAdvertisement();
    } 

function CreateCookieAdvertisement() {
    alert("Creating cookie function");
    Cookies.set("Advertisement", "open");
}

广告有一个锚标记,其中包含javascript函数,可将'Advertisement'的值设置为'closed'

<a class="close" id="closeAdvertistement" onclick="CloseCookieAdvertisement()">&nbsp;</a>

function CloseCookieAdvertisement() {
    Cookies.remove('Advertisement');
    Cookies.set('Advertistement', 'closed');
}

这是问题所在。当我第一次加载网站时,它确定值未定义并创建值为'open'的cookie 1cookieOpen

然后,在我关闭广告后,它将cookie设置为'closed'

1cookieclosed

但是在刷新之后,由于某种原因,它会创建一个名为'advertisement'的额外Cookie,其值为'open',而原始'advertisement'的值仍为'closed'

2Cookies

这是我的整个代码减去广告的html的小提琴。我不知道jsfiddle是否允许你创建cookie,所以我不确定这是否有用

https://jsfiddle.net/x43nbbmk/

1 个答案:

答案 0 :(得分:0)

在CloseCookieAdvertisement中检查“广告”与“广告”的拼写