javascript 设置目标日期和时间明天整点
javascript set target date and time tomorrow at hour
我正在尝试制作一个倒数计时器,它可以根据一天中的不同时间倒计时几个小时。
这是我当时尝试设置功能的方法。因此,如果在 14.00 之前,它将倒计时到 14.00,如果在 14.00 之后,它将倒计时到 20.00。 20.00 后,显示倒计时到明天 14.00。
我试过这样设置目标时间,但是设置日期 "tomorrow at 14.00" 我就是无法开始工作。
var target_date = new Date();
var currentdate = new Date();
if (currentdate.getHours() > 0 && currentdate.getHours() < 14) {
target_date.setHours(14,0,0,0);
}
else if (currentdate.getHours() > 14 && currentdate.getHours() < 20) {
target_date.setHours(20,0,0,0);
}
else {
target_date.setDate(currentdate.getDate()+1).setHours(16,0,0,0); // if 20-24, count down to tomorrow at 14.00
}
倒计时脚本的其余部分是
var days, hours, minutes, seconds;
var countdown = document.getElementById("countdown");
setInterval(function () {
var current_date = new Date().getTime();
var seconds_left = (target_date - current_date) / 1000;
days = parseInt(seconds_left / 86400);
seconds_left = seconds_left % 86400;
hours = parseInt(seconds_left / 3600);
seconds_left = seconds_left % 3600;
minutes = parseInt(seconds_left / 60);
seconds = parseInt(seconds_left % 60);
countdown.innerHTML = hours + "t "
+ minutes + "m";
}, 1000)};
target_date.setDate(currentdate.getDate()+1).setHours(16,0,0,0);
setDate()
方法没有 return Date
对象,所以这个序列不起作用
你应该写
target_date.setDate(currentdate.getDate()+1);
target_date.setHours(16,0,0,0);
我正在尝试制作一个倒数计时器,它可以根据一天中的不同时间倒计时几个小时。
这是我当时尝试设置功能的方法。因此,如果在 14.00 之前,它将倒计时到 14.00,如果在 14.00 之后,它将倒计时到 20.00。 20.00 后,显示倒计时到明天 14.00。
我试过这样设置目标时间,但是设置日期 "tomorrow at 14.00" 我就是无法开始工作。
var target_date = new Date();
var currentdate = new Date();
if (currentdate.getHours() > 0 && currentdate.getHours() < 14) {
target_date.setHours(14,0,0,0);
}
else if (currentdate.getHours() > 14 && currentdate.getHours() < 20) {
target_date.setHours(20,0,0,0);
}
else {
target_date.setDate(currentdate.getDate()+1).setHours(16,0,0,0); // if 20-24, count down to tomorrow at 14.00
}
倒计时脚本的其余部分是
var days, hours, minutes, seconds;
var countdown = document.getElementById("countdown");
setInterval(function () {
var current_date = new Date().getTime();
var seconds_left = (target_date - current_date) / 1000;
days = parseInt(seconds_left / 86400);
seconds_left = seconds_left % 86400;
hours = parseInt(seconds_left / 3600);
seconds_left = seconds_left % 3600;
minutes = parseInt(seconds_left / 60);
seconds = parseInt(seconds_left % 60);
countdown.innerHTML = hours + "t "
+ minutes + "m";
}, 1000)};
target_date.setDate(currentdate.getDate()+1).setHours(16,0,0,0);
setDate()
方法没有 return Date
对象,所以这个序列不起作用
你应该写
target_date.setDate(currentdate.getDate()+1);
target_date.setHours(16,0,0,0);