我有一个函数可以倒计时到特定日期/时间。 这是它的代码:
<script type="text/javascript">
var deadline = new Date(Date.UTC(2017,05, 23, 09, 30, 59));
function time_remaining(endtime){
var t = endtime - new Date();
var seconds = Math.floor( (t/1000) % 60 );
var minutes = Math.floor( (t/1000/60) % 60 );
var hours = Math.floor( (t/(1000*60*60)) % 24 );
var days = Math.floor( t/(1000*60*60*24) );
return {'total':t, 'days':days, 'hours':hours, 'minutes':minutes, 'seconds':seconds};
}
function run_clock(id,endtime){
var clock = document.getElementById(id);
var days_span = clock.querySelector('.days');
var hours_span = clock.querySelector('.hours');
var minutes_span = clock.querySelector('.minutes');
var seconds_span = clock.querySelector('.seconds');
function update_clock(){
var t = time_remaining(endtime);
days_span.innerHTML = t.days;
hours_span.innerHTML = ('0' + t.hours).slice(-2);
minutes_span.innerHTML = ('0' + t.minutes).slice(-2);
seconds_span.innerHTML = ('0' + t.seconds).slice(-2);
if(t.total<=0){ clearInterval(timeinterval); document.getElementById('deadline_Container').style.display = "none"; document.getElementById('deadline_Container2').style.display = "block"; }
}
update_clock();
var timeinterval = setInterval(update_clock,1000);
}
run_clock('clockdiv',deadline);
</script>
现在我尝试通过获取当前日期来设置日期,并且仅将时间(小时、分钟、秒)设置为相同。 所以我得到的当前日期是这样的:
<script>
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10) {
dd = '0'+dd
}
if(mm<10) {
mm = '0'+mm
}
today = yyyy + ',' + mm + ',' + dd;
document.write(today);
</script>
我尝试过将 今天的 var
包含在 var 截止日期
中,所以
var deadline = new Date(Date.UTC(today, 09, 30, 59));
但我收到 NaN 错误。有人知道如何正确执行此操作吗?
最佳答案
查看文档中的 Date.UTC 方法:
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Date/UTC
您不能使用日期作为该方法的第一个参数,因为需要数字;)
关于javascript - 获取今天的日期并将其设置为倒计时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44721471/