Карты Google: хотите добавить / удалить GEvent Listener на карту - PullRequest
1 голос
/ 02 июня 2009

Я хочу добавить и удалить одно и то же событие для карты Google.

потому что я прикрепил Listener к событию 'moveend' на карте, поэтому событие открывает большое информационное окно, затем происходит событие 'moveend', которое я не хочу запускать для этой вещи. Любая идея, как я могу включить и выключить слушатель события 'moveend'?

1 Ответ

4 голосов
/ 02 июня 2009

Вы можете удалить прослушиватель событий, но вы должны передать точный прослушиватель, возвращенный при добавлении одного.

, например

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

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

или

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

РЕДАКТИРОВАТЬ: другой вариант - заставить функцию, которую вызывает слушатель, вести себя по-разному в разных условиях.

, например

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

    //code to run if whatever is not active
}
...