Maison >interface Web >js tutoriel >Greensock pour les débutants (partie 2): la chronologie de GSAP & # x27;
Greensock (GSAP) TimeLineMax: maîtrise des animations Web complexes
Ce tutoriel se plonge dans TimeLineMax de Greensock, un outil puissant pour gérer des animations Web complexes. Nous couvrirons les concepts et les techniques clés pour élever vos compétences d'animation.
Concepts clés:
=1
, -=0.5
) fournissent un contrôle granulaire sur les temps de début de Tween par rapport aux autres dans la chronologie. Pourquoi utiliser TimeLineMax?
Dans les animations plus simples, des tweens individuels avec des propriétés de retard suffisent. Cependant, à mesure que la complexité augmente, la gestion des retards de tween individuels devient lourde. TimelineMax résout cela en fournissant un mécanisme de contrôle centralisé.
Considérez deux tweens:
Sans TimelineMax, la coordination de leur synchronisation nécessite des ajustements de retard manuel sur le deuxième Tween. TimelineMax élimine ce besoin.
coordonnées des tweens avec TimeLinemax
TimeLineMax agit comme un conteneur pour les préadolescents. Les tweens dans une chronologie exécutent séquentiellement par défaut. Le code suivant démontre un exemple de base:
<code class="language-javascript">const tl = new TimelineMax(); tl.set('.example__title', { scale: 0.2, autoAlpha: 0 }) .set('.example__ball', { scale: 0.2 }) .to('.example__ball', 0.5, { rotationX: 360, rotationY: 180, scale: 1, ease: Elastic.easeIn.config(2, 1) }) .to('.example__title', 0.5, { autoAlpha: 1, scale: 1, ease: Back.easeOut.config(4) });</code>
Remarquez le séquençage automatique - aucun retard manuel n'est nécessaire.
Paramètres de position et étiquettes
Pour un contrôle plus précis, utilisez les paramètres de position:
=1
: démarre un Tween 1 seconde après le précédent. -=0.5
: démarre un tween 0,5 seconde avant le précédent. 1
: commence un tween à l'heure absolue de 1 seconde. Les étiquettes améliorent encore la lisibilité:
<code class="language-javascript">tl.addLabel('animationStart'); tl.to(element, 0.5, { x: 100 }, 'animationStart'); tl.to(otherElement, 1, { y: 100 }, 'animationStart+=2'); //Starts 2 seconds after 'animationStart'</code>
chronologies maître et organisation
Pour les animations complexes, les délais de nid dans une chronologie maître:
<code class="language-javascript">function animationPart1() { const tl = new TimelineMax(); // Add tweens here... return tl; } const masterTimeline = new TimelineMax(); masterTimeline.add(animationPart1(), 'part1'); // Add more nested timelines...</code>
Cette approche modulaire améliore l'organisation du code et la maintenabilité.
Fonctionnalités supplémentaires TimeLineMax:
new TimelineMax({ paused: true });
play()
, pause()
, reverse()
, restart()
, resume()
timeScale()
seek()
avec les étiquettes
Conclusion:
TimeLinemax de Greensock vous permet de créer des animations Web sophistiquées et bien organisées. En maîtrisant ses fonctionnalités, vous pouvez créer des expériences très interactives et visuellement attrayantes. Explorez les exemples de code fournis pour l'application et l'expérimentation pratiques. Restez à l'écoute pour la partie 3!
Questions fréquemment posées (FAQ): (celles-ci sont déjà traitées dans le texte d'origine, mais reformulé pour plus de clarté et de concision)
timeScale()
pour ajuster la vitesse d'animation. timeScale(2)
double la vitesse; timeScale(0.5)
Rassure de moitié. addLabel("labelName")
pour ajouter des étiquettes pour un positionnement précis. pause()
et resume()
pour contrôler la lecture de l'animation. reverse()
pour lire des animations à l'arrière. repeat()
pour faire boucle les animations (par exemple, repeat(3)
pour trois répétitions). staggerTo()
, staggerFrom()
, ou staggerFromTo()
pour les animations échelonnées. =
et -=
dans les paramètres de position pour la synchronisation relative. progress()
pour obtenir ou définir les progrès 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!