初学者JavaScript - 重新启动我的for循环
Beginner JavaScript - restarting my for loop
我有一个分 4 个步骤运行的动画,当 4 个步骤结束时,我希望它重新启动。
var aSteps = [
{
"x": "800",
"y": "0"
},
{
"x": "800",
"y": "500"
},
{
"x": "0",
"y": "500"
}, {
"x": "0",
"y": "0"
}
];
var iStepsLength = aSteps.length;
for (var i = 0; i < iStepsLength; i++)
{
$('#P1').animate
({
left: aSteps[i].x,
top: aSteps[i].y,
}, 1000);
}
我试图添加一个像 if 语句一样。
if (i == 3)
{
i=0;
}
但是我的浏览器会崩溃,因为它无限运行 for 循环。我希望你能帮助我,并教我我做错了什么。
.animate()
可以接受一个回调,该回调将在动画结束时调用:
function animateSteps( counter ) {
$('#P1').animate({
left: aSteps[ counter ].x,
top: aSteps[ counter ].y,
}, 1000, function(){
if (counter == 3)
{
counter=0;
}
animateSteps( counter + 1 );
});
}
animateSteps( 0 );
将 for 循环设置为等于函数。 调用该函数,然后再次调用它。编辑:喜欢这个:
function forloop() {
for (var i = 0; i < iStepsLength; i++) {
$('#P1').animate ({ left: aSteps[i].x, top: aSteps[i].y, }, 1000);
}
}
然后,只要您希望循环像这样运行,您就可以调用该函数:
forloop()
相关文章:
- 为什么JavaScript在for循环为3时向所有4发出警报
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 我的javascript for循环不起作用
- For循环冻结Javascript
- 如何在for循环中添加事件侦听器
- 双“for”循环(循环)
- javascript for循环不起作用
- for循环中的javascript if语句找不到==
- Javascript在for循环中等待处理请求
- For循环在Jquery中只运行一次
- 如何在for循环中使用计数器
- for循环中的JavaScript闭包
- 为什么我们在ES2015中需要一个新的for循环结构,而我们已经有了for、forEach
- For循环在调用时未运行
- 如何使用for循环添加所有按钮'单击事件
- 如何更改在for循环中生成的圆的位置
- 为什么这个For循环会使浏览器实验室崩溃
- 为什么我使用javascript获得了一个无限的for循环
- 在for循环中使用多维数组设置google.maps.Marker图标
- 如何在angularJS中运行for循环而不使用html标记