Existe-t-il un moyen de déclencher un événement après la fin d'une animation? quelle est la solution? Je suis très nouveau avec les bibliothèques YUI et je me perds ..
Ma décision est maintenant
var anim = new Y.Anim({
node: node,
duration: 1.0,
easing: Y.Easing.easeOut
});
...etc
Remarque: cela s'applique à YUI2.
3 réponses
Ouaip! Quelque chose comme:
var myAnim = new YAHOO.util.Anim("yourId", {
left: {from: 0, to:75}
}, 1);
myAnim.onComplete.subscribe(function() {
alert('Done!');
});
Voir http://developer.yahoo.com/yui/examples/animation/index. html pour plus d'exemples.
L'idée est que, comme une animation prend du temps, vous souhaiterez peut-être être averti lorsque l'animation se terminera pour exécuter toute logique supplémentaire dont vous pourriez avoir besoin: Voici quelques utilisations de cet événement:
- Déclenchez des animations supplémentaires une fois qu'une animation est terminée. Il peut s'agir du même élément ou d'une partie complètement différente de l'interface utilisateur.
- Supprimez l'élément du DOM. C'était peut-être une fenêtre contextuelle qui, une fois fermée (avec une animation), n'est plus nécessaire dans le DOM
- Quelque chose d'autre, comme remplir l'élément avec du contenu, etc.
Pour faire quelque chose après la fin d'une animation, il suffit d'écouter l'événement "end":
var anim = new Y.Anim({
node: node,
duration: 1.0,
easing: Y.Easing.easeOut,
on: {
end: function (e) {
// your stuff here
}
}
});
Questions connexes
De nouvelles questions
javascript
Pour des questions concernant la programmation dans ECMAScript (JavaScript / JS) et ses divers dialectes / implémentations (hors ActionScript). Veuillez inclure toutes les balises pertinentes dans votre question; par exemple, [node.js], [jquery], [json], etc.