Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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
for循环jquery javascript_Javascript_Jquery_Html_For Loop - Fatal编程技术网

for循环jquery javascript

for循环jquery javascript,javascript,jquery,html,for-loop,Javascript,Jquery,Html,For Loop,为什么如果我给一个变量一个“0”,那么html中的数字是“10”?我同时使用jQuery和JavaScript,但是你可以看到,在我重新加载页面后,中间的数字是“10”。它总是“10”并且没有变化 我试着让紫色的正方形绕10圈,我希望中间的数字每四舍五入改变一。我怎样才能做到这一点 让calc=0; for(设i=0;i

为什么如果我给一个变量一个“0”,那么html中的数字是“10”?我同时使用jQuery和JavaScript,但是你可以看到,在我重新加载页面后,中间的数字是“10”。它总是“10”并且没有变化


我试着让紫色的正方形绕10圈,我希望中间的数字每四舍五入改变一。我怎样才能做到这一点

让calc=0;
for(设i=0;i<11;i++){
$(“#设置动画”)。单击(函数(){
$(此)。设置动画({
顶部:“350px”
});
$(此)。设置动画({
左:“350px”
});
$(此)。设置动画({
顶部:“0px”
});
$(此)。设置动画({
左:“0px”
});
});
document.getElementById(“szam”).innerHTML=calc;
calc++;
}
#容器{
高度:400px;
宽度:400px;
背景颜色:黄色;
}
#生动活泼{
高度:50px;
宽度:50px;
位置:绝对位置;
背景色:丽贝卡紫;
}
身体{
边际:0px;
填充:0px;
}
#萨姆{
位置:绝对位置;
顶部:100px;
左:170px;
字体大小:72px;
}

你好

0
循环运行得相对较快,但默认情况下动画是排队的。这意味着代码从0到10迭代
i
,并对每个动画排队,但由于循环发生得太快,因此几乎立即显示10。另一方面,每个动画在开始之前都会等待上一个动画完成。因此,动画完成所需的时间比循环本身要长得多

要使用下面的代码进行演示,请注意“循环完成”消息似乎在单击触发器时立即出现

一种解决方案是在每个循环完成时,使用jQuery的
complete
回调提前计数器

完成
类型:函数()
动画完成后要调用的函数,每个匹配元素调用一次

.animate(属性[,持续时间][,缓和][,完成])

var计算=0;
var elm=document.getElementById(“szam”);
功能推进(){
calc++;
elm.innerHTML=calc;
}
$(“#设置动画”)。单击(函数(){

对于(var i=1;i你认为,在for循环中,
calc++
会做什么?啊,等等!你希望看到从0到10的数字?为什么你希望它会变化?肉眼看不到for循环所做的变化:我正在试着让紫色的正方形转10圈,我希望中间的数字每轮都变一圈。哟你看不到这一点,因为for循环的处理速度太快,以至于你实际上看到,当页面加载时,for已经完成,然后数字已经出现10@Marton-学习没关系。忽略任何试图让你感到愚蠢的人。他们也曾经是这样。你所经历的并不是那么不寻常。展示不是那么简单因为两件事,for循环一直运行得非常快,Javascript不会在每次执行操作时都更新显示。它在一个“周期”内完成所有计算,然后更新屏幕。你需要做的是放慢速度。你可以通过超时来完成。最后,谢谢你的回答。我很高兴rry如果这是一个糟糕的问题,但我只是在学习/尝试,我无法理解。非常抱歉,谢谢你的回答。