javascript запрос слайд-шоу фейдера - PullRequest
0 голосов
/ 14 июля 2020

Я хочу создать слайд-шоу, в котором слайды постепенно появляются и исчезают в качестве заголовка для сайта. Мне очень понравился пример, который я нашел здесь: https://www.the-art-of-web.com/css/fading-slideshow-no-jquery/, который казался элегантным способом достижения того, что я искал. Изображения сложены, css затухает верхнее, затем скрипт перемещает его в конец стопки.

Я реализовал это здесь: https://codepen.io/julie-thorpe/project/live/274355ef5f4204c792ade0810af6161c но это не работает должным образом, и я боюсь, что мое понимание javascript недостаточно хорошо, чтобы понять, почему. При запуске скрипт переносит и первое, и второе изображения вниз, а не только первое, поэтому слайд-шоу «перескакивает» на третье изображение вместо того, чтобы плавно переходить от второго к третьему. помощь с этим будет очень признательна!

   <header>

  <div id="stage">
  <a href="img/1.jpg"><img src="img/1.jpg" width="1200" height="250"></a>
  <a href="img/2.jpg"><img src="img/2.jpg" width="1200" height="250"></a>
  <a href="img/3.jpg"><img src="img/3.jpg" width="1200" height="250"></a>
  <a href="img/4.jpg"><img src="img/4.jpg" width="1200" height="250"></a>
  <a href="img/5.jpg"><img src="img/5.jpg" width="1200" height="250"></a>
  <a href="img/6.jpg"><img src="img/6.jpg" width="1200" height="250"></a>
  <a href="img/7.jpg"><img src="img/7.jpg" width="1200" height="250"></a>
  <a href="img/8.jpg"><img src="img/8.jpg" width="1200" height="250"></a>
  <a href="img/9.jpg"><img src="img/9.jpg" width="1200" height="250"></a>
  <a href="img/10.jpg"><img src="img/10.jpg" width="1200" height="250"></a>
  <a href="img/11.jpg"><img src="img/11.jpg" width="1200" height="250"></a>
  <a href="img/12.jpg"><img src="img/12.jpg" width="1200" height="250"></a>  
  </div>

    <style type="text/css">

    #stage {
    margin: 1em auto;
    width: 1200px;
    height: 250px;
  }

  #stage a {
    position: absolute;

  }

  #stage a img {
    background: #fff;
  }

  #stage a:nth-of-type(1) {
    animation-name: fader;
    animation-delay: 3s;
    animation-duration: 3s;
    z-index: -10;
  }
  #stage a:nth-of-type(2) {
   z-index: -20;
  }
  #stage a:nth-of-type(n+3) {
    display: none;
  }

  @keyframes fader {
    from { opacity: 1.0; }
    to   { opacity: 0.0; }
  }
</style>

    window.addEventListener("DOMContentLoaded", function(e) 
  {
  var stage = document.getElementById("stage");
  var fadeComplete = function(e) { stage.appendChild(arr[0]); };
  
  var arr = stage.getElementsByTagName("a");
  
  for(var i=0; i < arr.length; i++){
    arr[i].addEventListener("animationend", fadeComplete, false);
  }

}, false);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...