/*
startDate:开始时间。 endDate,截止时间,为空时,默认不过期
格式:2005-05-07 00:00:00
*/
function BannerTimer(startDate,endDate){
endDate = endDate || false;
//callback 回调函数
this.task = function(callback){
var current = Math.floor(new Date().getTime() / 1000);
startDate = getTimestamp(startDate);
if(!endDate){
current += 10; //截止时间为空时,则不过期
}else{
endDate = getTimestamp(endDate);
}
if(startDate <= current && current < endDate){
callback();
}
}
/*
返回一个毫秒时间戳
*/
function getTimestamp(date){
date = date.split(/\s+/g);
//仅提供日期
var arr = [];
if(1 == date.length){
arr = date[0].split('-');
}else{
arr = arr.concat(date[0].split('-'),date[1].split(':'));
}
var dateObj = getDate(arr);
return Math.floor(dateObj.getTime() / 1000);
}
function getDate(arr){
for(var i=0; i<arr.length; i++){
if(!arr[i]){
arr[i] = 0;
}
arr[i] = arr[i].toString().replace(/^0/, '');
}
var instance = new Date();
instance.setFullYear(arr[0]);
instance.setMonth(parseInt(arr[1])-1);
instance.setDate(arr[2]);
instance.setHours(arr[3] || 0);
instance.setMinutes(arr[4] || 0);
instance.setSeconds(arr[5] || 0);
return instance;
}
}
js页面限时任务执行
最新推荐文章于 2022-02-28 12:10:23 发布