Javascript 如何在jQuery中使用cookies显示弹出窗口?
我想显示一个弹出窗口三天,一天不超过三次。我怎样才能做到这一点 HTML模式弹出窗口Javascript 如何在jQuery中使用cookies显示弹出窗口?,javascript,jquery,Javascript,Jquery,我想显示一个弹出窗口三天,一天不超过三次。我怎样才能做到这一点 HTML模式弹出窗口 这里是一个开始,使用和 基本上它: 获取客户端时间 检查是否首次访问该站点 如果是首次访问,它将在3天后设置最终过期日期时间cookie 并将过期cookie设置为false 它不是第一次访问,而是检查客户端时间是否大于最终到期cookie时间 如果是,它将删除所有cookie并将过期cookie设置为true 如果不是,它会根据一天中的时间检查早上、下午和晚上的饼干 如果这是一天中某个特定时间的首次访
这里是一个开始,使用和
基本上它:
- 获取客户端时间
- 检查是否首次访问该站点
- 如果是首次访问,它将在3天后设置最终过期日期时间cookie
- 并将过期cookie设置为false
- 它不是第一次访问,而是检查客户端时间是否大于最终到期cookie时间
- 如果是,它将删除所有cookie并将过期cookie设置为true
- 如果不是,它会根据一天中的时间检查早上、下午和晚上的饼干
- 如果这是一天中某个特定时间的首次访问,它将显示一个弹出窗口
- 还可以根据一天中的时间更改问候语文本,例如:
Cookies.get();
要删除Cookie,您可以使用:
Cookies.remove(“cookie\u name\u here”);
上午、下午和晚上的定义如下:
0400 to 1200
1200 to 1700
1700 to 0400
但是你可以随意改变它们
javascript
//获取客户端的当前时间
var client_time_now=新日期();
var client_time_now_hour=client_time_now.getHours();
log(“客户端时间现在:+client时间现在”);
log(“客户端时间现在小时:+客户端时间现在小时”);
//查看客户是否已访问该站点
var final_expiration_date_time=Cookies.get(“final_expiration_date_time”);
//如果你第一次来
如果(最终到期日时间===未定义){
log(“这是您第一次访问”);
//从现在起3天内设置到期日期
//见:https://stackoverflow.com/a/56728401
var final_expiration_date_time_value=新日期(date.now()+(3600*1000*72));
//要测试有效期,请取消下面的注释
//var最终到期日时间值=新日期();
日志(“最终到期日时间值:“+final到期日时间值”);
Cookies.set(“最终到期日期时间”,最终到期日期时间值);
var expired=“false”;
Cookies.set(“过期”,过期);
}
//如果不是第一次就诊,请检查自第一次就诊后是否已过3天
否则{
log(“这不是您第一次访问”);
//当前日期时间是否大于到期日期时间
//见:https://stackoverflow.com/a/493018
var expired=client\u time\u now.getTime()>新日期(Cookies.get(“final\u expirement\u Date\u time”).getTime();
//为了保持一致性,cookie存储为字符串
expired=expired.toString();
控制台日志(“过期:+过期”);
//如果已过期,请删除Cookie并将expired设置为true
如果(过期==“真”){
Cookies.set(“过期”、“真实”);
饼干。移除(“早上”);
饼干。取出(“下午”);
饼干。移除(“夜晚”);
}否则{
Cookies.set(“过期”、“假”);
}
}
如果(过期==“假”){
//查看访问是否在这些时间内完成
var ready_visted_morning=Cookies.get(“morning”);
var ready_visted_午后=Cookies.get(“午后”);
var ready_visted_night=Cookies.get(“night”);
//上午处理-上午4时至下午12时
如果(客户时间现在一小时>3&&客户时间现在一小时11&&客户时间现在一小时16&&客户时间现在一小时=0&&客户时间现在一小时,那么为了澄清,您想在72小时(3天)内每8小时(每天3次)显示一次,然后不再显示?
0400 to 1200
1200 to 1700
1700 to 0400