使用CoffeeScript进行jQuery延迟/保证/动画

时间:2012-10-02 00:06:57

标签: jquery jquery-animate coffeescript jquery-deferred promise

我想要制作动画的三件事:头部,脚部和手臂。我正在使用jQuery和CoffeeScript。

我想创建一个像这样动画头部和脚部的函数:

move_feet: () ->
   feet.animate({
        left: 100
    },{
        duration: 100
    })

move_head: () ->
   head.animate({
        left: 100
    },{
        duration: 100
    })

然后当脚和头完成移动时,移动手臂。

我尝试使用when / then模式,但我认为我没有正确使用它。

$.when(move_head(), move_feet()).done(=>
    move_arm()
);
立即发生火灾。{p> move_feet这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

你有正确的想法。当你用$ .when检查多个返回的promises / deferred时,我认为你想使用$ .then(回调)。

$.when(promise1, promise2).then(callback);

应该做的伎俩!

希望它有所帮助!