Привязать событие к анимации - PullRequest
0 голосов
/ 15 марта 2011

У меня есть пара элементов, которые анимируются по щелчку стрелки.
Теперь я хочу, чтобы, если они были анимированными, чтобы вызвать событие.
Дело в том, что все они анимированы по-разному, поэтому мне придется
запустить это событие на каждом элементе отдельно.

Есть ли способ сделать что-то вроде $('div:animated').live(...) или что-то
что бы запустить событие на анимированных элементах?

1 Ответ

0 голосов
/ 15 марта 2011
$("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 и проверка верхнего значения элемента на предмет изменений и т. Д., Но это было бы грязно и не рекомендуется.

Просто примите удар и используйте обратные вызовы. лучшая практика.

Если у кого-то нет идей.

...