我试图在页面上设置cookie消息。我想要的是当cookie不存在时,显示消息。当用户点击"我接受"按钮,cookie已设置。并且当用户返回页面/网站时,不再显示该消息。
但它现在所做的是在用户访问我们页面时立即设置cookie。
$(document).ready(function() {
var visit=GetCookie("AMIR86");
if (visit==null){
cookiebar();
}
var expire=new Date();
expire=new Date(expire.getTime()+7776000000);
document.cookie="AMIR86=here; expires="+expire;
$('#close-cookies').click(function(){
$('#cookiebar').addClass('close-cookies');
});
});
function GetCookie(name) {
var arg=name+"=";
var arglen=arg.length;
var dclen=document.cookie.length;
var i=0;
while (i<dclen) {
var j=i+arglen;
if (document.cookie.substring(i,j)==arg)
return "here";
i=document.cookie.indexOf(" ",i)+1;
if (i==0)
break;
}
return null;
}
function cookiebar() {
$('#cookiebar').addClass('display');
}
我工作的jsfiddle:http://goo.gl/61aLuS
答案 0 :(得分:1)
这段代码设置了cookie。为了便于阅读和清晰编码,请将其移至自己的功能中。
function setAgreeCookie() {
var expire=new Date();
expire=new Date(expire.getTime()+7776000000);
document.cookie="AMIR86=here; expires="+expire;
}
然后,在“我同意”按钮上设置click
处理程序以设置Cookie。
$('#close-cookies').click(function(){
setAgreeCookie();
$('#cookiebar').addClass('close-cookies');
});