YUI Anim на После события?
Есть ли способ вызвать событие после завершения анимации? что за причина? Я очень новичок в библиотеках YUI и теряюсь...
моя ведьма сейчас
var anim = new Y.Anim({
node: node,
duration: 1.0,
easing: Y.Easing.easeOut
});
...так далее
Примечание: это относится к YUI2.
3 ответа
Решение
Ага! Что-то вроде:
var myAnim = new YAHOO.util.Anim("yourId", {
left: {from: 0, to:75}
}, 1);
myAnim.onComplete.subscribe(function() {
alert('Done!');
});
See http://developer.yahoo.com/yui/examples/animation/index.html for more examples.
Чтобы сделать что-то после анимации, вам просто нужно прослушать событие "end":
var anim = new Y.Anim({
node: node,
duration: 1.0,
easing: Y.Easing.easeOut,
on: {
end: function (e) {
// your stuff here
}
}
});
Идея состоит в том, что, поскольку анимация требует времени, вы можете захотеть получить уведомление о завершении анимации для выполнения любой дополнительной логики, которая может вам понадобиться: Вот несколько вариантов использования этого события:
- Запустите дополнительные анимации после завершения анимации. Это может быть один и тот же элемент или совершенно другая часть пользовательского интерфейса.
- Удалить элемент из DOM. Возможно, это было всплывающее окно, которое после закрытия (с анимацией) больше не требуется в DOM
- Что-то другое, например, заполнение элемента контентом и т. Д.