簡單寫了寫,可根據指定參數Deadline格式的時間進行測試,如存在些不嚴謹的地方還請指出。
// 設置cookie在當天指定時間點過期並提示 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; }
補充:
function setCookie(name,value,days){//設置cookie var d = new Date(); d.setTime(d.getTime() + (days*24*60*60*1000)); var expires = "expires="+d.toUTCString(); document.cookie = name + "=" + value + "; " + expires; }
以上所述是小編給大家介紹的JS如何設置cookie有效期為當天24點並彈出歡迎登陸界面,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!