我认为这个问题与 Jquery 中的队列有关。我们可以使用 clearQueue() 清除队列以停止任何动画,但是清除队列不能停止回调函数考虑这一点
$("#sth").animate( { width:'100%' }, 2000, function() {
$("#sth").css("width","0%");
});
和
$("#sth").clearQueue().css("width","0%");
能够停止动画并推回宽度。但是,在 2000 毫秒之后,它也会变成 100% 宽度,因为完整的回调函数。无论队列是否存在,该函数都会在 2000 毫秒后调用。