简单写了写,可根据指定参数Deadline格式的时间进行测试,如存在些不严谨的地方还请指出。
提示
function setCookie(name,value,Deadline,callback){
// 获取当前日期对象
var curDate = new Date();
// 获取当前日期对应的时间戳
var curTime = curDate.getTime();
// 获取指定时间的时间戳
var endTime = convertTime(curDate,Deadline);
// 计算出指定时间与当前时间的时间差
var disTime = endTime - curTime;
// 设置cookie过期时间
document.setCookie = name + '=' + value + ';expires=' + disTime;
// 在指定时间到达后执行回调
setTimeout(callback,disTime);
}
setCookie('name','value','24:00:00',function(){
alert('cookie过期了');
});
// 获取指定时间的时间戳
function convertTime(nowDate,Deadline){
// 分割参数Deadline
var _dateArr = Deadline.split(':');
// 分别获取参数中对应的时、分、秒
var hours = parseInt(_dateArr[0]);
var minutes = parseInt(_dateArr[1]);
var seconds = parseInt(_dateArr[2]);
// 设置对应时分秒
nowDate.setHours(hours);
nowDate.setMinutes(minutes);
nowDate.setSeconds(seconds);
// 获取当前天中指定时分秒对应的毫秒数
var result = Date.parse(nowDate);
return result;
}
补充:
以上所述是小编给大家介绍的JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持。
原文链接:https://www.f2er.com/js/46800.html