@GIBRID21
...

Почему не работает addEventListener?

var mobelems = document.querySelectorAll('elems');
for (var i = 0; i < mobelems.length; i++) {
  mobelems[i].addEventListener("click", mob_click_func());
  console.log(mobelems[i]);
}
function mob_click_func() {
console.log('ok');
}

Выводит в консоль 'ok', сразу без события.
А если указать функцию сразу в addEventListener, то работает нормально
mobelems[i].addEventListener("click", function() {console.log('ok');});
  • Вопрос задан
  • 150 просмотров
Решения вопроса 2
AlexKeller
@AlexKeller
mobelems[i].addEventListener("click", mob_click_func);
Без скобок, иначе это сразу вызов
Ответ написан
@abberati
frontend-разработчик
var mobelems = document.querySelectorAll('elems');

for (var i = 0; i < mobelems.length; i++) {
  mobelems[i].addEventListener("click", mob_click_func());
  console.log(mobelems[i]);
}

function mob_click_func() {
  return function() {
    console.log('ok');
  }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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