animation_aside.js 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. let asideDowns1 = document.getElementsByClassName('asideDown1');
  2. Array.from(asideDowns1).forEach(asideDown1 => {
  3. function slideDown() {
  4. let translateY = 0; // Position de départ (en bas)
  5. let duration = 17000; // Durée de l'animation en millisecondes
  6. let startTime = null; // Temps de départ de l'animation
  7. function animate(timestamp) {
  8. if (!startTime) startTime = timestamp; // Initialise le temps de départ si ce n'est pas déjà fait
  9. let progress = (timestamp - startTime) / duration; // Calcul de la progression de l'animation
  10. progress = Math.min(progress, 0.9); // Limite la progression à 0.3 (pour éviter un dépassement)
  11. translateY = 410 * progress * (0.7 - progress); // Réduction de la vitesse vers la fin de l'animation
  12. asideDown1.style.transform = `translateY(${translateY}%)`; // Appliquer la transformation
  13. if (progress < 0.7) {
  14. requestAnimationFrame(animate);
  15. }
  16. // if (progress >= 0.7) {
  17. // // startTime = null;
  18. // requestAnimationFrame(animate);
  19. // }
  20. }
  21. requestAnimationFrame(animate);
  22. }
  23. slideDown(); // Lancer l'animation lorsque la page est chargée
  24. });
  25. let asideDowns2 = document.getElementsByClassName('asideDown2');
  26. Array.from(asideDowns2).forEach(asideDown2 => {
  27. function slideDown() {
  28. let translateY = 0; // Position de départ (en bas)
  29. let duration = 25000; // Durée de l'animation en millisecondes
  30. let startTime = null; // Temps de départ de l'animation
  31. function animate(timestamp) {
  32. if (!startTime) startTime = timestamp; // Initialise le temps de départ si ce n'est pas déjà fait
  33. let progress = (timestamp - startTime) / duration; // Calcul de la progression de l'animation
  34. progress = Math.min(progress, 1); // Limite la progression à 0.3 (pour éviter un dépassement)
  35. translateY = 410 * progress * (0.7 - progress); // Réduction de la vitesse vers la fin de l'animation
  36. asideDown2.style.transform = `translateY(${translateY}%)`; // Appliquer la transformation
  37. if (progress < 0.7) {
  38. requestAnimationFrame(animate);
  39. }
  40. // if (progress >= 0.7) {
  41. // // startTime = null;
  42. // requestAnimationFrame(animate);
  43. // }
  44. }
  45. requestAnimationFrame(animate);
  46. }
  47. slideDown(); // Lancer l'animation lorsque la page est chargée
  48. });
  49. let asideDown3 = document.getElementById('circle_vert_clair_erable_6');
  50. function slideDown() {
  51. let translateY = 0; // Position de départ (en bas)
  52. let duration = 23000; // Durée de l'animation en millisecondes
  53. let startTime = null; // Temps de départ de l'animation
  54. function animate(timestamp) {
  55. if (!startTime) startTime = timestamp; // Initialise le temps de départ si ce n'est pas déjà fait
  56. let progress = (timestamp - startTime) / duration; // Calcul de la progression de l'animation
  57. progress = Math.min(progress, 1); // Limite la progression à 0.3 (pour éviter un dépassement)
  58. translateY = 410 * progress * (0.7 - progress); // Réduction de la vitesse vers la fin de l'animation
  59. asideDown3.style.transform = `translateY(${translateY}%)`; // Appliquer la transformation
  60. if (progress < 0.7) {
  61. requestAnimationFrame(animate);
  62. }
  63. // if (progress >= 0.7) {
  64. // // startTime = null;
  65. // requestAnimationFrame(animate);
  66. // }
  67. }
  68. requestAnimationFrame(animate);
  69. }
  70. slideDown(); // Lancer l'animation lorsque la page est chargée
  71. // let moveups = document.getElementsByClassName('moveup');
  72. // console.log(moveups);
  73. // Array.from(moveups).forEach(moveup => {
  74. // function slideUp() {
  75. // let translateY = 0; // Position de départ (en bas)
  76. // let duration = 6000; // Durée de l'animation en millisecondes
  77. // let startTime = null; // Temps de départ de l'animation
  78. // function animate(timestamp) {
  79. // if (!startTime) startTime = timestamp; // Initialise le temps de départ si ce n'est pas déjà fait
  80. // let progress = (timestamp - startTime) / duration; // Calcul de la progression de l'animation
  81. // progress = Math.min(progress, 0.8); // Limite la progression à 1 (pour éviter un dépassement)
  82. // translateY = -10 * progress * (0.7 - progress); // Déplacement d'un pixel vers le haut à chaque itération
  83. // moveup.style.transform = `translateY(${translateY}%)`; // Appliquer la transformation
  84. // if (progress < 0.8) {
  85. // requestAnimationFrame(animate);
  86. // }
  87. // }
  88. // requestAnimationFrame(animate);
  89. // }
  90. // slideUp(); // Lancer l'animation lorsque la page est chargée
  91. // });