我的页面中有一个Javascript倒数计时器。一旦计数器返回零,我想将用户重定向到另一个页面。但是,我的页面正在进入重定向循环并继续重定向到自身。
var count=20;
setInterval(timer, 1000);
function timer()
{
if(count > 0)
{
count = count - 1;
}
else
window.location = "<?= site_url('quiz/complete/' . $session->id); ?>";
document.getElementById("timer").innerHTML = count;
}
答案 0 :(得分:1)
您需要按clearInterval()功能删除间隔。类似的东西:
var count=20;
var interval = setInterval(timer, 1000);
function timer()
{
if(count > 0)
{
count = count - 1;
}
else {
clearInterval(interval);
window.location = "<?= site_url('quiz/complete/' . $session->id); ?>";
}
document.getElementById("timer").innerHTML = count;
}
答案 1 :(得分:0)
这是另一个简单的解决方案,纯JavaScript使用setInterval()函数显示倒数计时器:
// Countdown timer for redirecting to another URL after several seconds
var seconds = 7; // seconds for HTML
var foo; // variable for clearInterval() function
function redirect() {
document.location.href = 'http://bubencode.com';
}
function updateSecs() {
document.getElementById("seconds").innerHTML = seconds;
seconds--;
if (seconds == -1) {
clearInterval(foo);
redirect();
}
}
function countdownTimer() {
foo = setInterval(function () {
updateSecs()
}, 1000);
}
countdownTimer();
在这里查看JSFiddle:http://jsfiddle.net/bubencode/dn6xc932/
我希望你会发现它有用。