Maison > interface Web > tutoriel CSS > Comment puis-je suspendre et reprendre les animations CSS3 à l'aide de JavaScript ?

Comment puis-je suspendre et reprendre les animations CSS3 à l'aide de JavaScript ?

Linda Hamilton
Libérer: 2024-12-03 13:43:12
original
429 Les gens l'ont consulté

How Can I Pause and Resume CSS3 Animations Using JavaScript?

Suspendre et reprendre l'animation CSS3 avec JavaScript

La manipulation dynamique des animations CSS3 à l'aide de JavaScript offre un contrôle sur la lecture des effets visuels. Voici comment suspendre et reprendre les animations CSS3 sans bibliothèques externes :

L'exemple de code fourni tente de suspendre et de reprendre les animations en modifiant la propriété webkitAnimationPlayState. Cependant, plusieurs tentatives peuvent échouer en raison de gestionnaires d'événements en cours.

Méthode alternative utilisant la classe CSS

Une approche plus efficace consiste à exploiter une classe CSS pour contrôler l'état de l'animation. . Voici à quoi ressemblerait le code révisé :

HTML :

<!-- Add the paused class initially to pause the animations by default -->
<img>
Copier après la connexion

CSS :

.paused{
    -webkit-animation-play-state:paused;
    -moz-animation-play-state:paused;
    -o-animation-play-state:paused; 
    animation-play-state:paused;
}
Copier après la connexion

JavaScript :

function doStuff(){
    var pic1 = document.getElementById("pic1");
    var pic2 = document.getElementById("pic2");

    // Toggle the paused class to resume or pause the animation
    pic1.classList.toggle("paused");
    pic2.classList.toggle("paused");
}
Copier après la connexion

Cette méthode élimine la nécessité de suspendre et de reprendre explicitement l'animation dans les gestionnaires d'événements. En ajoutant ou en supprimant la classe en pause, vous pouvez facilement contrôler l'état de l'animation.

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