Bonjour,
J'utilise la librairie OpenLayers (pour la création de cartes) et ExtJS (avec son extension GeoExt qui repose sur OpenLayers).
J'ai une carte (objet OpenLayers.Map) qui réagit à un click de l'utilisateur. La propriété events permet de gérer les événements de la carte.
Je voudrais changer cette réaction directement après le premier click sur la carte. Pour cela, j'ai imbriqué le même click handler dans lui même :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 map = new OpenLayers.Map(); map.events.on({ click : function(evt){ traitement1; } });
Le comportement que j'obtiens au premier click correspond bien au traitement1. Mais au deuxième click j'obtiens le traitement1 et ensuite le traitement2, alors que je ne veux que le traitement2.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 map.events.on({ click : function(evt){ traitement1; map.events.on({ click : function(evt){ traitement2; } }); } });
Y a-t-il une façon d'obtenir le résultat que je cherche ?
Cordialement.
PS : Dans les codes ci-dessus, je n'utilise qu'OpenLayers : pas de ExtJs. Si il y a une meilleure manière de faire avec ExtJs je suis preneur.
Partager