【发布时间】:2014-11-28 05:47:10
【问题描述】:
我正在尝试创建一个基于时间的倒计时时钟。它不是基于 current_dates。将被拉出的初始时间将来自一个单独的 php 文件。这将用于基于浏览器的游戏。当有人单击按钮启动此脚本时。它将检查是否满足某些要求,如果满足,则此脚本将启动。根据对象的级别,它将为该进行级别拉动初始计时器。希望这是有道理的。无论如何,我将计时器脚本基于我提供的第一个代码。
这个脚本只占分钟和秒。我修改它以包括天和小时。在这个过程中的某个地方我搞砸了,脚本甚至根本不起作用。我也不太确定这是否是计算它的最佳方法。因此,如果您有更清洁的方法来执行此操作,请分享。提前谢谢你。
此脚本基于我看到的分钟/秒脚本。以下是原文:
<span id="countdown" class="timer"></span>
<script>
var seconds = 60;
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
remainingSeconds = "0" + remainingSeconds;
}
document.getElementById('countdown').innerHTML = minutes + ":" + remainingSeconds;
if (seconds == 0) {
clearInterval(countdownTimer);
document.getElementById('countdown').innerHTML = "Buzz Buzz";
} else {
seconds--;
}
}
var countdownTimer = setInterval('secondPassed()', 1000);
</script>
这是我试图包含天、小时、分钟和秒的修改后的脚本。
<span id="countdown"></span>
<script>
var current_level = 93578;
function timer() {
var days = Math.round(current_level/86400);
var remainingDays = Math.round(current_level - (days * 86400));
if (days <= 0){
days = current_level;
}
var hours = Math.round(remainingDays/3600);
var remainingHours = Math.round(remainingDays - (hours * 3600));
if (hours >= 24){
hours = 23;
}
var minutes = Math.round(remainingHours/60);
var remainingMinutes = Math.round(remainingHours - (minutes * 60));
if (minutes >= 60) {
minutes = 59;
}
var seconds = Math.round(remainingMinutes/60);
document.getElementById('countdown').innerHTML = days + ":" + hours ":" + minutes + ":" + seconds;
if (seconds == 0) {
clearInterval(countdownTimer);
document.getElementById('countdown').innerHTML = "Completed";
}
}
var countdownTimer = setInterval('timer()', 1000);
</script>
【问题讨论】:
标签: javascript php timer countdowntimer