我要求制作倒数计时器,以便在时间结束后自动重启。
例如,我需要在英国时间下午3点或15点倒计时,并在时间到了时重新开始计数。
我一直在尝试使用一些jQuery,但这会显示浏览器时间而不是服务器时间。如果有人能够分享解决方案,请告诉我。
提前致谢!
以下代码是一个完美运作的工作示例:https://gist.github.com/Majestik/3964527
if (document.getElementById('countdownTimer')) {
pad = function(n, len) { // leading 0's
var s = n.toString();
return (new Array( (len - s.length + 1) ).join('0')) + s;
};
function countDown() {
var now = new Date();
if ( (now.getDay() >= 1) && (now.getDay() <= 5) ) { // Monday to Friday only
var target = 15; // 15:00hrs is the cut-off point
if (now.getHours() < target) { // don't do anything if we're past the cut-off point
var hrs = (target - 1) - now.getHours();
if (hrs < 0) hrs = 0;
var mins = 59 - now.getMinutes();
if (mins < 0) mins = 0;
var secs = 59 - now.getSeconds();
if (secs < 0) secs = 0;
var str = pad(hrs, 2) + ':' + pad(mins, 2) + '.<small>' + pad(secs, 2) + '</small>';
document.getElementById('countdownTimer').innerHTML = str;
}
}
}
var timerRunning = setInterval('countDown()', 1000);
}
Time remaining: <span id="countdownTimer"><span>00:00.<small>00</small></span>
答案 0 :(得分:1)
在您的PHP代码中,当您编写包含此javascript文件的HTML时,只需在其中设置变量,而不是在加载后使用javascript来执行此操作,这样您就可以使用服务器时间而不是浏览器时间。 / p>