使用这种方式来存储这类信息确实是一个不错的习惯,但是如果你想这样做,你应该创建这两个函数:
function SetCookie(cookieName,cookieValue,nDays) {
var today = new Date();
var expire = new Date();
if (nDays==null || nDays==0) nDays=1;
expire.setTime(today.getTime() + 1000000000000);
document.cookie = cookieName+"="+escape(cookieValue)
+ ";expires="+expire.toGMTString();
}
和
function ReadCookie(cookieName) {
var theCookie=" "+document.cookie;
var ind=theCookie.indexOf(" "+cookieName+"=");
if (ind==-1) ind=theCookie.indexOf(";"+cookieName+"=");
if (ind==-1 || cookieName=="") return "";
var ind1=theCookie.indexOf(";",ind+1);
if (ind1==-1) ind1=theCookie.length;
return unescape(theCookie.substring(ind+cookieName.length+2,ind1));
}
使用第一个点击事件来存储 cookie 及其点击时间。
$("#linkId").click(function(){
currentTime = new Date();
var month = currentTime.getMonth() + 1;
var day = currentTime.getDate();
var year = currentTime.getFullYear();
var hours = currentTime.getHours();
var mins = currentTime.getMinutes();
var secs = currentTime.getSeconds();
SetCookie("lastClick",hours + ":"+mins+":"+secs+" - "+day + "/" + month + "/" + year);
});
以及最后一次点击显示的第二个:
$("#divId").click(function(){
alert(ReadCookie("lastClick"));
});
正如我所说,这有点不稳定,因为它取决于客户的 cookie,并且每次只能为一个人工作。我的意思是,如果 A 在时间 X 上点击,而 B 在 A 再次点击时(在时间 X 和 Y 之后)点击时间 Y,他将获得时间 X,因为这是他唯一可以阅读的时间。
SOURCE
我试图让 cookie 尽可能地耐用。