Heim > Web-Frontend > js-Tutorial > Wie erkennt man das Ende von CSS3-Übergängen und -Animationen mit jQuery?

Wie erkennt man das Ende von CSS3-Übergängen und -Animationen mit jQuery?

Patricia Arquette
Freigeben: 2024-11-04 06:46:30
Original
291 Leute haben es durchsucht

How to Detect the End of CSS3 Transitions and Animations with jQuery?

CSS3-Übergänge nutzen: Abschluss mit jQuery erkennen

Beim Animieren von Elementen mithilfe von CSS3-Übergängen ist es notwendig, den genauen Zeitpunkt zu kennen, zu dem sie enden Folgeaktionen durchführen. Im Gegensatz zu jQuery-Animationen verfügen CSS3-Übergänge nicht über integrierte Abschlussrückrufe.

Übergangsendereignisse erfassen

Um das Ende eines Übergangs zu erkennen, bietet jQuery Folgendes Skript:

<code class="javascript">$("#someSelector").bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){ ... });</code>
Nach dem Login kopieren

Für Animationen kann ein ähnlicher Ansatz verwendet werden:

<code class="javascript">$("#someSelector").bind("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd", function(){ ... });</code>
Nach dem Login kopieren

Durch die Übergabe aller vorangestellten Ereigniszeichenfolgen funktioniert dieses Skript in mehreren Browsern.

Verwenden von .one() für Single Fire

Um sicherzustellen, dass der Event-Handler nur einmal ausgelöst wird, können Sie die .one()-Methode von jQuery anstelle von .bind() verwenden:

<code class="javascript">$("#someSelector").one("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){ ... });

$("#someSelector").one("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd", function(){ ... });</code>
Nach dem Login kopieren

Veraltung und moderner Ansatz

Die .bind()-Methode von jQuery ist jetzt veraltet. Der bevorzugte Ansatz ist .on(), der in Verbindung mit .off() funktioniert. Hier ist ein Beispiel:

<code class="javascript">$("#someSelector")
.on("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd",
 function(e){
    // do something here
    $(this).off(e);
 });</code>
Nach dem Login kopieren

Dieser Ansatz stellt sicher, dass die Callback-Funktion nur einmal ausgeführt wird.

Das obige ist der detaillierte Inhalt vonWie erkennt man das Ende von CSS3-Übergängen und -Animationen mit jQuery?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage