Javascript 在JS中替换setInterval计时器

Javascript 在JS中替换setInterval计时器,javascript,jquery,animation,Javascript,Jquery,Animation,我有一个特定速度的动画,它的值是从一个输入范围传递过来的。当页面加载动画时,默认速度为16,如下所示 HTML: 每当我通过“输入范围”(input range)滑块选择一个新速度时,我希望动画速度运行的可变数字并没有取代默认速度,而是实际添加到默认速度。因此,当页面加载并在16时运行时,我决定将滑块拖动到10,动画不会在10时运行,而是在26时运行!这不允许我减慢动画,也不允许我决定自己的最大速度,因为它可以不断增加 我需要如何调整上述代码,以便在加载页面时,尽管有默认速度的要求,但速度仍按选

我有一个特定速度的动画,它的值是从一个输入范围传递过来的。当页面加载动画时,默认速度为16,如下所示

HTML:

每当我通过“输入范围”(input range)滑块选择一个新速度时,我希望动画速度运行的可变数字并没有取代默认速度,而是实际添加到默认速度。因此,当页面加载并在16时运行时,我决定将滑块拖动到10,动画不会在10时运行,而是在26时运行!这不允许我减慢动画,也不允许我决定自己的最大速度,因为它可以不断增加


我需要如何调整上述代码,以便在加载页面时,尽管有默认速度的要求,但速度仍按选择的任何值计时?

在设置新时间间隔之前,请清除以前的时间间隔:

clearInterval(animateInterval);

您现在要做的是每次都设置另一个间隔,并且所有间隔都并行启动。

在设置新间隔之前,请清除上一个间隔:

clearInterval(animateInterval);

您现在正在做的是每次都设置另一个间隔,所有间隔都并行触发。

在将另一个
setInterval
调用的结果分配给变量之前,对
animateInterval
的第一个值使用
clearInterval
。您可能需要取消(clearInterval(animateInterval)),然后用新的延迟重置间隔。总是让我印象深刻的是,几乎相同的答案可以在几秒钟之间给出;)若你们想调节动画的速度,那个么你们的方法可能是不正确的。数字16不设置动画速度,但设置刷新速率。你的动画(你没有提供的代码)应该取决于时间,并且有合适的位置来控制动画的速度。在将另一个
setInterval
调用的结果分配给你的变量之前,对
animateInterval
的第一个值使用
clearInterval
。你可能需要取消(clearInterval(animateInterval)),然后用新的延迟重置间隔。总是让我印象深刻的是,几乎相同的答案可以在几秒钟之间给出;)如果你想调节动画的速度,那么你的方法可能不正确。数字16不设置动画速度,但设置刷新速率。你的动画(你没有提供的代码)应该取决于时间,并且有合适的地方来控制动画的速度。我喜欢用一行代码就能给出答案。它就像一个符咒。谢谢。我喜欢用一行代码就能给出答案。它就像一个符咒。非常感谢。
clearInterval(animateInterval);