Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Mon 13 October 2008 16:26

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

evenement recuurence click objet point couche vectorielle

bonjour,

le code ci dessous permet d'affecter un evenement "onclick" aux objects(points)  de ma couche vectorielle "layer"


le probleme, c'est que dans la carte, quand j'appuie sur un des point de la couche vectorielle, la boite de dialogue affiche bien le message "coucou" mais il l'affiche 20 fois soit la valeur de la variable i dans la boucle for.....next






Code:

 for (var i=0; i<20; i++) {
                 features[i] = new OpenLayers.Feature.Vector(
                    new OpenLayers.Geometry.Point(Math.random()*360-180, Math.random()*180-90) 
                    
                    
                );
                
                features[i].state = states[parseInt(Math.random()*5)];
                
                features[i].attributes.monAttribut = i;
              
                
            
            layer.events.register("click",  features[i], function(){alert("coucou")});

            
            }

Hors ligne

 

#2 Mon 13 October 2008 16:29

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: evenement recuurence click objet point couche vectorielle

ca me parait logique si tu met l'action dans une boucle qui tourne 20 fois.

Que veux tu faire ?

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#3 Mon 13 October 2008 16:32

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: evenement recuurence click objet point couche vectorielle

en fait je veux affecter un seul evenement click à chaque objet crée de la couche :-)

Hors ligne

 

#4 Tue 14 October 2008 09:18

René-Luc D'Hont
Participant assidu
Date d'inscription: 7 Nov 2006
Messages: 328
Site web

Re: evenement recuurence click objet point couche vectorielle

Enregistre ton évènements sur le feature et non sur le layer :

Code:

features[i].events.register("click",  features[i], function(){alert("coucou")});

Hors ligne

 

#5 Tue 14 October 2008 10:37

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: evenement recuurence click objet point couche vectorielle

René-Luc D'Hont a écrit:

Enregistre ton évènements sur le feature et non sur le layer :

Code:

features[i].events.register("click",  features[i], function(){alert("coucou")});


c'est ce que j'avais tenté initialement mais le fait de faire features[i].events......  me declenche une exception  :'(

Hors ligne

 

#6 Tue 14 October 2008 10:55

René-Luc D'Hont
Participant assidu
Date d'inscription: 7 Nov 2006
Messages: 328
Site web

Re: evenement recuurence click objet point couche vectorielle

Oui, c'est normal désolé.

J'ai donc regardé la documentation, et la liste des évènements associé à une couche vectorielle. Si tu souhaite sélectionné un objet géographique, il faut utiliser l'évènement featureselected. Pour plus d'infos, il fuat que tu te plonges dans les exmeples en relation avec la sélection de feature.

Hors ligne

 

#7 Tue 14 October 2008 11:05

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: evenement recuurence click objet point couche vectorielle

sinon je pense que la piste des markers pourrait aussi le faire


merci

Hors ligne

 

Pied de page des forums

Powered by FluxBB