2009-06-02 6 views
1

Je veux ajouter et supprimer le même événement pour Google map. Parce que j'ai attaché un événement Listener à 'moveend' sur la carte, l'événement ouvre une grande infoWindow, puis l'événement 'moveend' se produit, ce que je ne veux pas faire pour cette chose. Toute idée comment puis-je activer et désactiver l'événement 'moveend' écouteur?google maps: veux ajouter/supprimer GEvent Listener à la carte

+0

Pour référence future, cette question aurait pu être améliorée en incluant le code source spécifique indiquant ce que vous avez actuellement. –

Répondre

4

Vous pouvez supprimer un écouteur d'événement mais vous devez transmettre l'écouteur exact renvoyé lorsque vous en avez ajouté un.

par exemple.

//add moveend listener 
var moveendListener = GEvent.addListener(source, "moveend", yourfunction); 

//remove moveend listener 
GEvent.removeListener(moveendListener); 

ou

//remove all listeners associated with an event 
GEvent.clearListeners(source, "moveend") ; 

EDIT: Une autre option est d'avoir la fonction des appels d'auditeurs se comportent différemment dans des conditions différentes.

par exemple.

function moveendHandler() { 
    if (isWhateverActive()) return; 

    //code to run if whatever is not active 
} 
Questions connexes