Maison > interface Web > tutoriel CSS > Comment puis-je détecter la fin des transitions et des animations CSS3 dans jQuery ?

Comment puis-je détecter la fin des transitions et des animations CSS3 dans jQuery ?

Barbara Streisand
Libérer: 2024-12-31 12:24:10
original
586 Les gens l'ont consulté

How Can I Detect the Completion of CSS3 Transitions and Animations in jQuery?

Détection de l'achèvement des transitions et animations CSS3

Lorsque vous travaillez avec des animations ou des transitions CSS3, un défi courant se pose : déterminer quand les animations ou les transitions sont terminées. Cette connaissance est cruciale pour effectuer des actions ultérieures, telles que la suppression d'éléments du DOM.

Dans jQuery, vous avez la possibilité de spécifier que "Supprimer" se produise une fois l'animation terminée. Cependant, pour les transitions ou animations CSS3, il existe une manière spécifique de détecter leur point final.

Transitions

Pour les transitions, jQuery fournit une méthode pour écouter la fin d'une transition :

$("#someSelector").bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){ ... });
Copier après la connexion

Animations

De même, pour les animations, vous pouvez use :

$("#someSelector").bind("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd", function(){ ... });
Copier après la connexion

Notez que vous pouvez transmettre toutes les chaînes d'événements préfixées par le navigateur dans la méthode bind() pour garantir que l'événement est pris en charge sur plusieurs navigateurs.

Gestion des événements uniques

Pour garantir que le gestionnaire d'événements n'est déclenché qu'une seule fois, vous pouvez utiliser one() de jQuery method :

$("#someSelector").one("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){ ... });
$("#someSelector").one("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd", function(){ ... });
Copier après la connexion

Méthodes obsolètes

Actuellement, la méthode bind() de jQuery est obsolète et on() est préféré. Vous pouvez également utiliser off() sur la fonction de rappel pour spécifier qu'elle ne doit être déclenchée qu'une seule fois. Voici un exemple :

$("#someSelector")
.on("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd",
 function(e){
    // do something here
    $(this).off(e);
 });
Copier après la connexion

Références

  • [Méthode jQuery .off()](https://api.jquery.com/off/)
  • >[Méthode jQuery .one()](https://api.jquery.com/one/)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal