ho questo codice:addEventListener, per(), indice. come usare la chiusura?
var items = this.llistat.getElementsByTagName('a');
for(var i = 0; i < items.length; i++){
items[i].addEventListener('click', function(event) {
alert(i);
}, items[i]);
}
in cui l'evento è in ascolto, ma ci sono 3
oggetti e l'avviso allways stampare 3
su uno qualsiasi degli elementi (che non rispetta l'indice),
Dosen't items[i]
non dovrebbe fare il lavoro come chiusura?
grazie!
Il terzo argomento su [ 'addEventListener' ] (https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener) è un valore booleano che indica se il listener di eventi ottiene la priorità di acquisizione (ad esempio, per renderlo cancellabile); non specifica un valore 'this'. – apsillers
Anche correlati, [Javascript infamous Loop problem?] (Http://stackoverflow.com/questions/1451009/javascript-infamous-loop-problem). –