在动画上绑定一个事件

时间:2011-03-15 10:14:17

标签: jquery event-handling jquery-animate

我有几个元素在箭头点击动画。
现在我希望如果它们被动画化,就可以调用一个事件。
问题是,它们都以不同的方式生动,所以我必须要 分别在每个元素上触发此事件。

有没有办法做$('div:animated').live(...)之类的事情 会激活动画元素上的事件吗?

1 个答案:

答案 0 :(得分:0)

$("div").animate({
    "top":20
},1000,function(){
    callback();
});

function callback(){
    //stuff here
}

$("#layer1, #layerMask").animate({
    "top":10
},{
    queue:false,
    duration:1000, 
    easing:"easing method if required", 
    complete:function(){
    callbacks();
    }   
});

function callback(){
    //stuff here
}

最好的方式! 每次为元素设置动画时,只需使用回调。

我能想到的唯一其他方法是像setInterval这样的东西,并检查元素顶部值是否有变化等但是这会很混乱而且不建议。

只需点击并使用回调即可。最佳实践。

除非其他人有任何想法。