Dies ist eine Notiz darüber, wie man addEventListener für jedes Element mit einer for-Schleife in JavaScript hinzufügt. Verwenden Sie [].forEach.call. Unten ist ein Beispiel.
for (i = 0; i < document.getElementsByTagName('img').length; i++){
document.getElementsByTagName('img')[i].addEventListener("mouseover", function(){
console.log(document.getElementsByTagName('img')[i].src)
});
}
↓
window.addEventListener('DOMContentLoaded', function(e){
[].forEach.call(document.querySelectorAll('img'),function(x){
x.addEventListener("mouseover", function(e){
console.log(e.target.src);
});
});
});
oder
// window.addEventListener('DOMContentLoaded', function(e){
[].forEach.call(document.querySelectorAll('img'),function(x){
x.addEventListener("mouseover", function(e){
console.log(e.target.src);
});
});
// });
ref:
JavaScript - forループで要素ごとにaddEventListenerを追加したいがうまくいかない(135762)|teratail