Size: a a a

JavaScript — русскоговорящее сообщество

2020 October 28

ab

a b in JavaScript — русскоговорящее сообщество
вынести
источник

ab

a b in JavaScript — русскоговорящее сообщество
У тебя каждый раз добавляется addEventListener
источник

IU

Ivan Uslov in JavaScript — русскоговорящее сообщество
не каждый раз, а при клики на картинку
источник

IU

Ivan Uslov in JavaScript — русскоговорящее сообщество
Ivan Uslov
Да это херня... почему та хуйня его циклирует... я раньше делал просто

const toggleImagePopup = () => {
   
   popupImageCard.classList.toggle("popup-form_showed");
   
   
};

closeImagePopup.addEventListener('click', toggleImagePopup);

То работало, решил сделать "универсальный тогл"))))
почему вот так работает?
источник

ab

a b in JavaScript — русскоговорящее сообщество
это не цикл
источник

IU

Ivan Uslov in JavaScript — русскоговорящее сообщество
пока не поставил ()=> все работало)
источник

ab

a b in JavaScript — русскоговорящее сообщество
Да
источник

ab

a b in JavaScript — русскоговорящее сообщество
Потому что () => {} это каждый раз новая ссылка
источник

IU

Ivan Uslov in JavaScript — русскоговорящее сообщество
А почему так? Что то уже голова бум бум
источник

SS

Sergiy Shatunov in JavaScript — русскоговорящее сообщество
после ()=> должно быть ()
источник

ab

a b in JavaScript — русскоговорящее сообщество
источник

ab

a b in JavaScript — русскоговорящее сообщество
Один клик
источник

SS

Sergiy Shatunov in JavaScript — русскоговорящее сообщество
не понимаю зачем тут лямбда
источник

ab

a b in JavaScript — русскоговорящее сообщество
потому что мы передаем обработчику два раза один и тот же объект
источник

ab

a b in JavaScript — русскоговорящее сообщество
а () => click()
источник

ab

a b in JavaScript — русскоговорящее сообщество
Это каждый раз новый объект
источник

IU

Ivan Uslov in JavaScript — русскоговорящее сообщество
closeImagePopup.addEventListener('click', () => toggleCardPopup(cardImage));

А как тогда правильно написать чтобы все работало и передать cardImage?)
источник

ab

a b in JavaScript — русскоговорящее сообщество
источник

ab

a b in JavaScript — русскоговорящее сообщество
Добавляем -> стало три
источник

ab

a b in JavaScript — русскоговорящее сообщество
Ivan Uslov
closeImagePopup.addEventListener('click', () => toggleCardPopup(cardImage));

А как тогда правильно написать чтобы все работало и передать cardImage?)
Как минимум, не пораждай новые обработчики событий внутри событий
источник