Javascript Jquery自动增加值并检测重置
我从值I=0开始,最大值为4,当脚本检测值与4相同时,必须重新启动或将“I”的值重置为0作为默认值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;
函数加载(){
如果(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);
usesetInterval(加载,2000);
instead这看起来像是你已经问过的问题的翻版。@JuanCarlosMariñoFernández很高兴帮助你:):)