Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.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中的无限循环?_Javascript_Loops_Animation_Infinite - Fatal编程技术网

Javascript中的无限循环?

Javascript中的无限循环?,javascript,loops,animation,infinite,Javascript,Loops,Animation,Infinite,我有一个汽车在屏幕上来回行驶的动画,我知道了当图像到达屏幕右侧时如何翻转图像,当图像到达左侧时如何翻转图像。然而,我需要循环这个JS事件,以便动画不断显示汽车在正确的“方向”上行驶。下面的代码应该会让你了解我在使用什么,所以如果有人能帮助这个初学者想出如何使其无限循环,我将不胜感激 *tl/dr 基本上我需要下面的代码无限循环 var carorange = $('.org-car'); setTimeout(function () { carorange.addClas

我有一个汽车在屏幕上来回行驶的动画,我知道了当图像到达屏幕右侧时如何翻转图像,当图像到达左侧时如何翻转图像。然而,我需要循环这个JS事件,以便动画不断显示汽车在正确的“方向”上行驶。下面的代码应该会让你了解我在使用什么,所以如果有人能帮助这个初学者想出如何使其无限循环,我将不胜感激

*tl/dr

基本上我需要下面的代码无限循环

var carorange = $('.org-car');
    setTimeout(function () {
        carorange.addClass('flipimg');
    }, 5000);
    setTimeout(function () {
        carorange.removeClass('flipimg');
    }, 10000);

使用
setInterval
代替
setTimeout

var carorange = $('.org-car');
setInterval(function () {
    carorange.toggleClass('flipimg');
}, 5000);

setInterval
还有一个很大的优势:可以停止间隔。因此,如果您将间隔分配给一个变量,如
var myTimer=setInterval…
,您可以随时使用
clearInterval(myTimer)停止它:)

使用
setInterval
而不是
setTimeout

var carorange = $('.org-car');
setInterval(function () {
    carorange.toggleClass('flipimg');
}, 5000);

setInterval
还有一个很大的优势:可以停止间隔。因此,如果您将间隔分配给一个变量,如
var myTimer=setInterval…
,您可以随时使用
clearInterval(myTimer)停止它:)

Nit:setTimeout也可以取消,因此它不是setInterval的“大优势”(取消并不一定比不重新启动或立即终止回调容易)。setInterval在计划下一个滴答声的时间上确实有一点“重新定值”的优势/差异,但它确实如此。看,使用两个间隔不是一个好主意。他们可能会在一段时间后失去同步。只需使用一个
5000
毫秒间隔,然后切换该类。疯狂火车完全正确。我只是想快点帮忙!;)我编辑了答案,你们都是巫师。工作起来很有魅力!谢谢大家!Nit:setTimeout也可以被取消,因此它不是setInterval的“大优势”(取消并不一定比不重新启动或立即终止回调容易)。setInterval在计划下一个滴答声的时间上确实有一点“重新定值”的优势/差异,但它确实如此。看,使用两个间隔不是一个好主意。他们可能会在一段时间后失去同步。只需使用一个
5000
毫秒间隔,然后切换该类。疯狂火车完全正确。我只是想快点帮忙!;)我编辑了答案,你们都是巫师。工作起来很有魅力!谢谢大家!可能的重复可能的重复