我希望在.animate回调函数之后调用一个函数。我为此目的使用.done方法,但它无法正常工作。 fiddle
$(function(){
$('button').click(function(){
$('div').animate({width:'400px'},300,function(){alert(0)})
}).promise().done(function(){alert(1)})
})
答案 0 :(得分:10)
你在按钮元素上调用了done
,而不是在动画的div
上调用
$('button').click(function () {
$('div').animate({
width: '400px'
}, 300, function () {
alert(0)
}).promise().done(function () {
alert(1)
})
})
演示:Fiddle
答案 1 :(得分:2)
您需要将承诺放在animate
函数上。在那一刻,你有.click
:
$('button').click(function(){
$('div').animate({width:'400px'},300,function(){alert(0)})
.promise()
.done(function(){alert("1")});
})