我应该在jQuery中再次设置元素动画之前停止动画吗

我应该在jQuery中再次设置元素动画之前停止动画吗,jquery,jquery-animate,Jquery,Jquery Animate,在再次设置元素动画之前,是否需要停止动画?例如,我正在将一个元素的大小从[200200]调整为[800800]。在动画中间,我想将同一元素的大小调整为[600600],而不是[800800] 在对同一元素使用.animate()函数之前,是否应该使用.stop()停止动画 如果我不停止当前动画,jQuery会在执行第二个动画之前完成第一个动画吗 当我调用animate()时,jQuery自动添加溢出:隐藏编码为元素样式,并在动画完成时重置该值。但是,如果在动画结束之前调用.stop(),则属

在再次设置元素动画之前,是否需要停止动画?例如,我正在将一个元素的大小从[200200]调整为[800800]。在动画中间,我想将同一元素的大小调整为[600600],而不是[800800]

  • 在对同一元素使用
    .animate()
    函数之前,是否应该使用
    .stop()
    停止动画
  • 如果我不停止当前动画,jQuery会在执行第二个动画之前完成第一个动画吗

当我调用
animate()
时,jQuery自动添加
溢出:隐藏编码为元素样式,并在动画完成时重置该值。但是,如果在动画结束之前调用
.stop()
,则属性不会重置为其原始值。

是否需要完全取决于您的要求。是的,如果不停止上一个动画,它们将排队。在您的示例中,您的元素将完全放大到800x800,然后设置动画到较小的尺寸600x600。 听起来好像要在对新动画排队之前停止上一个动画并清除fx队列(
$element.stop(true);


另一个最有可能希望清除动画队列的示例是,当用户单击同一按钮时,幻灯片切换开关可以打开/关闭。当用户快速单击按钮时,您不希望滑块完全打开/关闭十几次。相反,你可以在单击时清除队列,然后只做一个打开/关闭动画。

为什么你需要在动画中间调整相同元素的大小两次。元素用窗口调整大小。如果用户在打开元素时调整窗口大小,则将有两个调用
animate()