@Hastes1234

Как реализовать слушатель событий по массиву?

Здравствуйте. Используя нативный JS, хочу реализовать простейший слайдер.
хотел узнать, как можно сделать так, чтобы на экране было 4 элемента, а остальные были спрятаны с помощью класса, таким образом, чтобы прокручивались все элементы по очереди. В общем, обычный простой слайдер. Спасибо!

const nextArr = document.querySelector(".slider__arrow_next");
      const prevArr = document.querySelector(".slider__arrow_prev");
      const arrSlides = document.getElementsByClassName("slider__slide");

      for (let index = 0; index < arrSlides.length; index++) {
        prevArr.addEventListener("click", () => {
          arrSlides[index].classList.toggle("slider__slide_hide");
        });
        console.log(index);
        
      }

      for (let index = 0; index < arrSlides.length; index++) {
        nextArr.addEventListener("click", () => {
          arrSlides[index].classList.toggle("slider__slide_hide");
        });
      }
  • Вопрос задан
  • 133 просмотра
Пригласить эксперта
Ответы на вопрос 1
ArsenyMatytsyn
@ArsenyMatytsyn Куратор тега JavaScript
Руководитель frontend направления, предприниматель
Ты с какой-то не той стороны зашел.

Тебе надо получить массив элементов, и гонять в его диапазоне туда-сюда (или переносить элементы из конца в начало и наоборот для бесконечного цикла) элементы.

А, чтобы показать несколько элементов, тебе стоит по клику на стрелку, инкрементировать (например) индекс активного элемента и от него проходится в n-диапазоне (заданном или расчитанном) по элементам, которым ты будешь добавлять класс активного отображения.

Это примерно в том ключе, что ты делаешь, звучит сложно, а код никто в здравом уме тебе писать не будет, потому что реализаций слайдером на нативном JS и более того на html + css (без JS) в интернете полно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы