何时设置上次访问cookie

时间:2014-03-13 18:02:25

标签: javascript jquery cookies

我想突出自用户上次访问以来的新帖子,就像在此处解释的那样:

How to highlight new items on the site since last visit with jquery?

我使用这个jquery来过滤我想要突出显示的链接 - 它完全正常

$(".itemlink").filter(function() {
    return  $(this).attr("data-timestamp") > $.cookie("last_visit");
}).addClass('highlight');

但我不知道什么时候才能设置“最后访问”cookie。

到目前为止,我试过这个:

$(window).unload(function(){
    $.cookie("last_visit", $.now());
});

它完全符合我的预期 - 遗憾的是如果页面被刷新,当然这也是一个“卸载”事件......所以当我刷新页面时,我不会看到任何突出显示的元素,因为“最后访问”cookie读取$ .now()

为更好的时间/方式设置“最后访问”cookie的任何好主意?

1 个答案:

答案 0 :(得分:0)

您可以在更新last_visit值时创建session cookie。然后,检查会话cookie是否存在,并且只更新last_visit值(如果它不存在)。这样,它不会在刷新时更新,但会在浏览器关闭并重新打开时更新(因为浏览器会删除会话cookie)。