addEventListener с использованием цикла For и передачи значений
При использовании цикла for для добавления прослушивателей событий к нескольким объектам последний объект часто становится Цель для всех перемещений прослушивателей. В этой статье рассматривается эта проблема и предоставляется исправленный код с использованием замыканий:
Обзор проблемы:
Попытка добавить прослушиватели событий к нескольким объектам с помощью цикла, но в конечном итоге все слушатели нацелены на один и тот же объект (последний).
Фиксированный код:
закрытие — это способ предотвратить проблемы такого рода. Модифицированный код выглядит следующим образом:
// 函数在点击时运行: function makeItHappen(elem, elem2) { var el = document.getElementById(elem); el.style.backgroundColor = "red"; var el2 = document.getElementById(elem2); el2.style.backgroundColor = "blue"; } // 自动加载函数以添加侦听器: var elem = document.getElementsByClassName("triggerClass"); for (var i = 0; i
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3