JS cookie存储时间

我要实现的效果是一个按钮点击,保存一个时间,弹出一个对话框,第二次点击的时候,如果是在同一天就没有对话框,否则有对话框,也就是对话框一天只弹出一次。我知道是在第一次点击的... 我要实现的效果是一个按钮点击,保存一个时间,弹出一个对话框,第二次点击的时候,如果是在同一天就没有对话框,否则有对话框,也就是对话框一天只弹出一次。我知道是在第一次点击的时候,在cookie中写入一个时间,然后第二次的时间和第一次比较。第二次的时间是当前时间我会的,但是我不知道怎么获得第一次点击的时间,烦请高手指点,谢谢,本人只有1财富,不好意思 展开
 我来答
匿名用户
推荐于2017-08-07
展开全部
设置cookie的保存时间,通过cookie的expires性质指定一个终止时间就可以了。也就是说,你在设置cookie的时候,你的cookie字串要像下面这样组合:

1
2
3

var d= new Date();
d.setHours(d.getHours() + (24 * 30)); //保存一个月
document.cookie = "visited=yes; expires=" + d.toGMTString();
yugi111
2015-08-13 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.3亿
展开全部
这还不简单,你可以把你点击的时间也存储到cookie里面就可以了
追问
那是不是需要实例化两个date对象呢,一次是第一次的,一个是第二次的?
追答
//读取Cookie的函数 
function readCookie(name) {
    var cookieValue = "";
    var search = name + "=";
    if (document.cookie.length > 0) {
        offset = document.cookie.indexOf(search);
        if (offset != -1) {
            offset += search.length;
            end = document.cookie.indexOf(";", offset);
            if (end == -1) end = document.cookie.length;
            cookieValue = unescape(document.cookie.substring(offset, end))
        }
    }
    return cookieValue;
}

//写入Cookie的函数 
function writeCookie(name, value, hours) {
    var expire = "";
    if (hours != null) {
        expire = new Date((new Date()).getTime() + hours * 3600000);
        expire = "; expires=" + expire.toGMTString();
    }
    document.cookie = name + "=" + escape(value) + expire;
}



writeCookie("firstTime", new Date().getTime(), 24);

var firstTime = readCookie("firstTime");

var now = new Date().getTime();

if(now == firstTime) {
    // TODO
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式