隐藏div javascript(vanilla)cookie

时间:2017-05-04 16:13:58

标签: javascript

我正在尝试使用javascript隐藏div并将该信息存储到会话的其余部分。关闭div不是问题,但不知何故,信息不存储在我的cookie中。这是我到目前为止所拥有的。

var p = document.getElementById ('pcontainer');
window.onload = function () {
    if(document.cookie.length != 0){
        var nameValueArray = document.cookie.split("=");
        p.style.display = nameValueArray[1];
    }
}


function popup(){
    if(p.style.display != 'none'){
    var none = 'none';
    p.style.display = none;


   document.cookie = "geenpopup=" + none;}
}

1 个答案:

答案 0 :(得分:0)

要设置Cookie,您可以使用document.cookie = "name=value";,但要检索Cookie,您应该执行类似于使用分号分割Cookie,然后在值数组中查找变量名称的操作。像这个功能:

function getCookie (name) {
    var cookieValue = null;
    if (document.cookie && document.cookie !== '') {
        var cookies = document.cookie.split(';');
        for (var i = 0; i < cookies.length; i++) {
            var cookie = cookies[i].trim();
            if (cookie.substring(0, name.length + 1) == (name + '=')) {
                cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                break;
            }
        }
    }
    return cookieValue;
}

此函数从Django docs复制(并翻译成vanilla JS)。

因此,在您的情况下,您可以使用getCookie('geenpopup') [sic];

获取值