如何创建一个JavaScript动画循环,当另一个开始播放时停止?

如何创建一个JavaScript动画循环,当另一个开始播放时停止?,javascript,animation,Javascript,Animation,如何创建旋转一段时间并调用另一个动画的动画循环,当另一个动画开始工作时,第一个动画等待另一个动画完成,当另一个动画完成工作时,第一个动画再次开始播放,以此类推。据我所知,通过setTimout(递归)实现这一点是有问题的,因为它们彼此重叠,不能等待另一个的完成。 这就是我试图做的: var func=函数(i){ 返回函数(){ 如果(i>=5)返回; 控制台日志(“车次号”+i); //运行二次递归 var func2=函数(i_u2;){ 返回函数(){ 如果(i>=75)返回; 控制台日志

如何创建旋转一段时间并调用另一个动画的动画循环,当另一个动画开始工作时,第一个动画等待另一个动画完成,当另一个动画完成工作时,第一个动画再次开始播放,以此类推。据我所知,通过setTimout(递归)实现这一点是有问题的,因为它们彼此重叠,不能等待另一个的完成。
这就是我试图做的:

var func=函数(i){
返回函数(){
如果(i>=5)返回;
控制台日志(“车次号”+i);
//运行二次递归
var func2=函数(i_u2;){
返回函数(){
如果(i>=75)返回;
控制台日志(“第2圈”+i_u2;);
如果(i>=75){
console.log('2名玩家获胜');
}否则{
setTimeout(func2(++i),2000);
}
}
}
setTimeout(func2(0),2000);
//结束运行第二个递归
如果(i>=5){
console.log(“1名玩家获胜”);
}否则{
设置超时(func(++i),100);
}
}
}
setTimeout(函数(0),100);

保存“setTimeout”的返回并用“clearTimeout”清除它。@jjuniob是的,它工作了,非常感谢)