有没有什么办法可以阻止Jquery中的动画(也停止完整的回调函数)
问题描述:
我认为这个问题与Jquery中的队列是相对的。 我们可以使用clearQueue()来清除队列停止任何动画,但是明确的队列不能停止回调函数 考虑这个有没有什么办法可以阻止Jquery中的动画(也停止完整的回调函数)
$("#sth").animate({ width:'100%' }, 2000, function() {
$("#sth").css("width","0%");
});
和
$("#sth").clearQueue().css("width","0%");
能够停止动画和推回宽度。但是,在2000毫秒后,由于具有完整的回拨功能,它也将变为100%宽度。无论队列是否存在,函数将在2000毫秒后调用。
答
从jQuery的文档:
.clearQueue() 从队列中删除那些尚未运行的所有项目。
和
.stop() 停止当前正在运行的动画上的匹配元素。
尝试使用.stop()代替.clearQueue()。
http://api.jquery.com/stop/ –
是的,它被称为'stop()' – adeneo
我尝试停止(),但它似乎也无法停止回调,需要我尝试这两个,clearQueue,也停止 – john