有没有什么办法可以阻止Jquery中的动画(也停止完整的回调函数)

问题描述:

我认为这个问题与Jquery中的队列是相对的。 我们可以使用clearQueue()来清除队列停止任何动画,但是明确的队列不能停止回调函数 考虑这个有没有什么办法可以阻止Jquery中的动画(也停止完整的回调函数)

$("#sth").animate({ width:'100%' }, 2000, function() { 
    $("#sth").css("width","0%"); 
}); 

$("#sth").clearQueue().css("width","0%"); 

能够停止动画和推回宽度。但是,在2000毫秒后,由于具有完整的回拨功能,它也将变为100%宽度。无论队列是否存在,函数将在2000毫秒后调用。

+1

http://api.jquery.com/stop/ –

+1

是的,它被称为'stop()' – adeneo

+0

我尝试停止(),但它似乎也无法停止回调,需要我尝试这两个,clearQueue,也停止 – john

从jQuery的文档:

.clearQueue() 从队列中删除那些尚未运行的所有项目。

.stop() 停止当前正在运行的动画上的匹配元素。

尝试使用.stop()代替.clearQueue()。