Javascript - Array et addEvent
Résolu
siniko44
Messages postés
187
Statut
Membre
-
creadiff Messages postés 483 Statut Membre -
creadiff Messages postés 483 Statut Membre -
Bonjour,
Voici mon script :
Le problème, c'est que d'après la console de Chrome, "numli" vaut 3 (autrement dit la valeur de "i" lorsqu'il à finit sa boucle), peu importe le <li> où je clique.
Merci de me venir en aide ! :)
Voici mon script :
<li>LOL</li>
<li>PSY</li>
<li>BOB</li>
<script type="text/javascript">
var ali = document.getElementsByTagName('li');
function lih(numli) {
ali[numli].innerHTML='TEST !';
}
for(i=0;ali[i];i++) {
ali[i].addEventListener('click', function(){lih(i)},true); }
</script>
Le problème, c'est que d'après la console de Chrome, "numli" vaut 3 (autrement dit la valeur de "i" lorsqu'il à finit sa boucle), peu importe le <li> où je clique.
Merci de me venir en aide ! :)
2 réponses
-
Essaie avec :
<ul> <li>LOL</li> <li>PSY</li> <li>BOB</li> </ul> <script type="text/javascript"> function lih(numli) { this.innerHTML='TEST !'; } for(i=0;ali[i];i++) { ali[i].addEventListener('click', function(){lih();},true); } </script> -
Rectification, j'ai oublié une ligne précédemment :
<ul> <li>LOL</li> <li>PSY</li> <li>BOB</li> </ul> <script type="text/javascript"> function lih(numli) { this.innerHTML='TEST !'; } var ali = document.getElementsByTagName('li'); for(i=0;ali[i];i++) { ali[i].addEventListener('click', function(){lih();},true); } </script>