如何使用jquery循环

如何使用jquery循环,jquery,Jquery,今天大部分时间我都在倒数计时,现在我被困在循环中。如果没有for循环,一切都正常,倒计时将命中0并重新加载,但是使用for循环,它不能正确倒计时并跳过数字。我想在这里完成的是让计时器完全倒计时,在3次完全倒计时后,它将完全停止。我做错了什么 var number = 25; var i; function countdown() { $('#display').html("Redirecting in " + number + " second(s)."); for (i =

今天大部分时间我都在倒数计时,现在我被困在循环中。如果没有for循环,一切都正常,倒计时将命中0并重新加载,但是使用for循环,它不能正确倒计时并跳过数字。我想在这里完成的是让计时器完全倒计时,在3次完全倒计时后,它将完全停止。我做错了什么

var number = 25;
var i;

function countdown() {
    $('#display').html("Redirecting in " + number + " second(s).");
    for (i = 0; i < 3; ++i) {
        number--;
        if (number < 0) {
            window.location.reload();
            number = 0;
        }
    }
    setTimeout(countdown, 1000);
}

$(document).ready(function() {
    countdown();
});
var编号=25;
var i;
函数倒计时(){
$('#display').html(“在“+number+”秒内重定向”);
对于(i=0;i<3;++i){
数字--;
如果(数字<0){
window.location.reload();
数字=0;
}
}
设置超时(倒计时,1000);
}
$(文档).ready(函数(){
倒计时();
});

我认为您希望从25开始倒数3次,然后重新加载页面。我说得对吗

var number = 25;
var i = 0;

function countdown() {

    $('#display').html("Redirecting in " + number + " second(s).");

    number--;

    if (number == 0) {

        number = 25;
        i++;

    }

    if (i == 3) {

        window.location.reload();

    }

    setTimeout(countdown, 1000);

}

$(document).ready(function() {
    countdown();
});

如果它在没有循环的情况下工作,为什么还要使用它呢?你在循环中减量
number
四次——当然它跳过了数字。您还需要重新加载,这将重新启动整个过程——除非您将“总计”计数存储在持久性的某个位置,例如在cookie或其他东西中,否则每次重新加载JS时都会重新开始。您在
循环中将
数减少了4次。将它更改为(i=0;i<1;++i){
,它会起作用。但这种情况下循环的意义是什么?不清楚您在这里试图实现什么,for循环根本没有意义,您可能不需要它。如果您想倒计时3次,请按住两个计数器(如
number
,和
round
),每次减少
number
,并在
number
达到0时添加特殊处理。如果可能,倒计时并重新加载3次。如果不可能,倒计时并重新加载iFrame有几种方法。我想我应该省去麻烦,在PHP中设置一个
会话
。然后让PHP输出一个小代码设置
i
值的JS。会话本身显然会增加每个页面请求。尽管手动重新加载也会增加
i
值。