добавление прослушивателей 'click' в цикл [duplicate]
На этот вопрос уже есть ответ:
JavaScript замыкание внутри циклов - простой практический пример 39 ответов Стандарт рефакторингаonClick
в теге html для слушателей, столкнулся с проблемой с моим кодом:
var td;
for (var t=1;t<8;t++){
td = document.getElementById('td'+t);
if (typeof window.addEventListener==='function'){
td.addEventListener('click',function(){
console.log(td);
})}
}
Когдаtd
элемент нажат, предполагается, что нажалtd
с последним индексом из цикла, например7
Выглядит как eventListeners
заполнено только для последнего элемента в этом цикле.
Инициализация цикла выглядит правильно.
Почему так случилось?
Вот живой код