Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
259 views
in Technique[技术] by (71.8m points)

jquery - Create cookie Javascript

I have to create a JS cookie when a user click a button, this cookie will remember him after 10 minutes with another popup.

Example:

<button>Click me!</button>

and the button will hide when user click, after 10 minutes the button will show again:

<button>Click me!</button>

Script part:

function setCookieMsg(name) {
        var d = new Date();
        var time = d.setTime(d.getTime() + (600000));
        document.cookie = name + "=" + time;
    }

    function getCookie(cname) {
    var name = cname + "=";
    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) != -1) return c.substring(name.length, c.length);
    }
    return "";
    }

    function checkCookieMsg() {
    var cookie = getCookie("name");
    var d = new Date() - 600000;
    if (cookie == "") {
        setCookie("name", cookie);
    }else if (d => cookie) {
        $().getUnReadMessage();
        }
    }

What I've wrong?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You didn't mention the expires in cookie. The expires date should be UTC time string.

function setCookieMsg(name) {
     var date = new Date();
     date.setTime(date.getTime()+(600000));
     var expires = "; expires="+date.toUTCString();
     document.cookie = name + "=" + expires;
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...