Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery自动增加值并检测重置_Javascript_Jquery_Settimeout_Setinterval - Fatal编程技术网

Javascript Jquery自动增加值并检测重置

Javascript Jquery自动增加值并检测重置,javascript,jquery,settimeout,setinterval,Javascript,Jquery,Settimeout,Setinterval,我从值I=0开始,最大值为4,当脚本检测值与4相同时,必须重新启动或将“I”的值重置为0作为默认值 i=0; 函数加载(){ 如果(i==4){ i=0; } jQuery(“#text”).show(1000).hide(1000,function(){ 重新加载(); }); } 函数重载(){ setInterval(“加载()”,2000); 警报(“正常”+i); i++; } 加载() 问题在于,当调用函数load()以启动动画变量i时,值从1开始,而不是从0开始,因此它只运行3次

我从值I=0开始,最大值为4,当脚本检测值与4相同时,必须重新启动或将“I”的值重置为0作为默认值

i=0;
函数加载(){
如果(i==4){
i=0;
}
jQuery(“#text”).show(1000).hide(1000,function(){
重新加载();
});
}
函数重载(){
setInterval(“加载()”,2000);
警报(“正常”+i);
i++;
}
加载()

问题在于,当调用函数
load()
以启动动画变量
i
时,值从1开始,而不是从0开始,因此它只运行3次,然后重置为0。(因为经过3次迭代后
i
变为4)

所以,如果(i==4){
中增加4到5,你就可以走了

工作代码段:-

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="text" style="position:relative;width:150px;height:150px;background-color:red;display:none;"></div>

<script>
    i=0;
    $(document).ready(function(){
        loading();
    });
    function loading(){
      if(i==5){
        i=0;
      }
      jQuery("#text").show(1000).hide(1000,function(){reloading();});
    }
    function reloading(){
      setInterval("loading()",2000);
      alert("ok"+i);
      i++;
    }
</script>

i=0;
$(文档).ready(函数(){
加载();
});
函数加载(){
如果(i==5){
i=0;
}
jQuery(“#text”).show(1000).hide(1000,function(){reloading();});
}
函数重载(){
setInterval(“加载()”,2000);
警报(“正常”+i);
i++;
}

pelase不要使用
setInterval(“加载()”,2000);
use
setInterval(加载,2000);
instead这看起来像是你已经问过的问题的翻版。@JuanCarlosMariñoFernández很高兴帮助你:):)