Задать вопрос
@RustyS

Как связать кнопки с изображениями для произвольного выбора?

Задача - при нажатии на произвольную кнопку пагинации показывается соответствующий блок с изображением. Пока остановился на поиске нажатого элемента, связать с изображением тоже пока не получается.

products - коллекция блоков с изображениями, класс активного изображения - product-slider__wrapper--active,
paginationButtons - коллекция кнопок, класс активной кнопки - slider-pagination__button--current.

const onPaginationButtonClick = (evt) => {
//Перебираю коллекцию для поиска нажатого элемента, чтобы связать с номером,
// который также равен номеру нужного изображения
  for (let k = 0; k < paginationButtons.length; k++) {

    if(evt.target = paginationButtons[k]) { // Ошибка консоли: Cannot set property target of #<Event>

    //Перебираю коллекцию для поиска активного изображения
      for (let i = 0; i < products.length; i++) {

        if(isActive(products[i])) {
          //убираю со стараго активный класс
          products[i].classList.remove('product-slider__wrapper--active');
          //добавляю к изображению ,связанного с нажатой кнопкой
           products[k].classList.add('product-slider__wrapper--active');
          paginationButtons[k].classList.add('slider-pagination__button--current')
           //Я так понимаю,  что где-то нужен break, но не понимаю где
        }
      }
    }
  };
}
// Ставлю обработчик событий на каждый элемент
const chooseSlide = () => {
  paginationButtons.forEach((sliderButton) => {
    sliderButton.addEventListener('click', onPaginationButtonClick)
  });
}
  • Вопрос задан
  • 55 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Kentavr16
@Kentavr16
long cold winter
ты пытаешься присвоитьevt.target = paginationButtons[k] а хочешь проверить. Для этого используй == или ===.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы