所以我正在尝试创建一个计时器,根据我的网络主机时区(GMT + 10)每隔12小时倒计时一次,例如,到凌晨12点的时间比从凌晨12点经过多长时间到12点等等等等等等等等等等等。我目前有一些代码,但我相信它只会倒计时24小时......
>
哦,还有一个快速的小额奖励问题...如果可能,任何人都知道(如果他们有任何方式制作此计时器)当计时器到达00:00:00以显示文本30秒而不是恢复倒计时?
答案 0 :(得分:0)
这应该可以解决问题,%12会让它每天达到两次。
应该是23和59,而不是24和60,因为计数从0开始
setInterval(function time(){
var d = new Date();
var hours = (23 - d.getHours())%12;
var min = 59 - d.getMinutes();
var sec = 59 - d.getSeconds();
if(min===59&&sec>30&&hours===11){
min=0;
sec=0;
hours=0;
//and show what you want for 30 seconds
}
if((min + '').length === 1){
min = '0' + min;
}
if((sec + '').length === 1){
sec = '0' + sec;
}
jQuery('p').html(hours+':'+min+':'+sec)
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p></p>