Bonjour,
J'ai un script pour afficher depuis un fichier xml des icones sur une carte.
Je charge trois icones et lorsque je passe la souris sur un icone il affiche une étiquette avec un message : "je suis l'icone 1", "je suis l'icone 2" ...
Mon souci est que lorsque je passe la souris sur les icones j'ai toujours la même valeur -> la dernière chargée.

Merci de votre aide

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
// Le xml
<icones>
	<icone id="1" typeIcone="default" posxIcone="152" posyIcone="57" titreIcone="Je suis l'icone Numero 1">Icone 1</icone>
	<icone id="2" typeIcone="default" posxIcone="258" posyIcone="125" titreIcone="Je suis l'icone Numero 2">Icone 2</icone>
	<icone id="3" typeIcone="warning" posxIcone="320" posyIcone="256" titreIcone="Je suis l'icone Numero 3">Icone 3</icone>
</icones>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
var charge = new XML();
charge.load("fichier.xml");
charge.ignoreWhite = true;
charge.onLoad = function(){
 
	// Nb de noeuds
	nbNoeuds = charge.childNodes[0].childNodes.length;
 
	// affichage des icones
	for(i=0; i<nbNoeuds; i++){
 
		// Infos de chaque icone dans une variable
		// idIcone = charge.childNodes[0].childNodes[i].attributes.id;
		typeIcone = charge.childNodes[0].childNodes[i].attributes.typeIcone;
		titreIcone = charge.childNodes[0].childNodes[i].attributes.titreIcone;
		posXIcone = charge.childNodes[0].childNodes[i].attributes.posxIcone;
		posYIcone = charge.childNodes[0].childNodes[i].attributes.posyIcone;
 
		// affichage des icones
		_root.attachMovie(typeIcone, "typeIcone"+i, i);
		iconeAfficher = _root["typeIcone"+i];
		iconeAfficher._x = posXIcone;
		iconeAfficher._y = posYIcone;
 
		// identifiant icone
		_root["typeIcone"+i].i = i;
 
		// Function sur chaque icone
		// On affiche une étiquette avec le nom de l'icone au survol
		_root["typeIcone"+i].onRollOver = function(){
			_root.attachMovie("etiquette","etiquette"+i,1000);
			etiquetteAfficher = _root["etiquette"+i];
			etiquetteAfficher._x = posXIcone;
			etiquetteAfficher._y = posYIcone;
			etiquetteAfficher.varTitreIcone = titreIcone;
		}
		iconeAfficher.onRollOut = function(){
			removeMovieClip(etiquetteAfficher);
		}
 
	}
}