Javascript boucle for

Résolu
azerty -  
Zestyr Messages postés 466 Date d'inscription   Statut Membre Dernière intervention   - 16 févr. 2010 à 12:45
Bonjour,

j'ai un petit problème en javascript, je suis en train de m' "amuser" avec l'API de google maps :

voici le code qui fonctionne :

new google.maps.event.addListener(markers[0], 'click', function() { infos[0].open(map,markers[0]); });
new google.maps.event.addListener(markers[1], 'click', function() { infos[1].open(map,markers[1]); });
new google.maps.event.addListener(markers[2], 'click', function() { infos[2].open(map,markers[2]); });
new google.maps.event.addListener(markers[3], 'click', function() { infos[3].open(map,markers[3]); });

et le code qui ne fonctionne pas :

for (var j = 0; j < 4; j++) {
new google.maps.event.addListener(markers[j], 'click', function() { infos[j].open(map,markers[j]); });
}

si quelqu'un a une idée du pourquoi du comment ??

parce que là, j'ai 4 occurences, mais en réalité, j'en ai plus de 500, j'aimerais donc bien que la boucle fonctionne :D

merci
A voir également:

3 réponses

Zestyr Messages postés 466 Date d'inscription   Statut Membre Dernière intervention   52
 
Salut,
En déclarant la variable j avec var tu la déclare en local et il me semble que c'est pas bon de le faire ici donc essaie en enlevant le var !

++
0
azerty
 
merci pour ta réponse

j'ai essayé en enlevant le "var" mais ça ne fonctionne toujours pas

je ne pense pas que cela vienne de là puisque j'ai une autre boucle dans une autre fonction javascript en déclarant la variable avec "var" dans une boucle for et ca fonctionne bien

merci quand même
0
azerty
 
bon, mon frère est mon sauveur

la fonction() interprete le j comme un j et non comme une variable

ainsi, il faut placer le code new ... dans une fonction test(j) à part et dans la boucle, appeler cette nouvelle fonction

et ca roule ! merci bro !
0
Zestyr Messages postés 466 Date d'inscription   Statut Membre Dernière intervention   52
 
Bizar que j soit interprété comme un caractère !
0