animation-aside.js 994 B

123456789101112131415161718192021
  1. let dropdowns1 = document.getElementById('circle_vert_clair_erable_3');
  2. function slideDown() {
  3. let translateY = 0; // Position de départ (en bas)
  4. let duration = 17000; // Durée de l'animation en millisecondes
  5. let startTime = null; // Temps de départ de l'animation
  6. function animate(timestamp) {
  7. if (!startTime) startTime = timestamp; // Initialise le temps de départ si ce n'est pas déjà fait
  8. let progress = (timestamp - startTime) / duration; // Calcul de la progression de l'animation
  9. progress = Math.min(progress, 0.3); // Limite la progression à 0.3 (pour éviter un dépassement)
  10. translateY = 410 * progress * (0.48 - progress); // Réduction de la vitesse vers la fin de l'animation
  11. dropdown1.style.transform = `translateY(${translateY}%)`; // Appliquer la transformation
  12. if (progress < 0.999999) {
  13. requestAnimationFrame(animate);
  14. }
  15. }
  16. requestAnimationFrame(animate);
  17. }
  18. slideDown(); // Lancer l'animation lorsque la page est chargée