2009-06-02 39 views
1

我想爲Google地圖添加和刪除相同的事件。谷歌地圖:想要添加/刪除GEvent偵聽器到地圖

因爲我在地圖上附加了一個Listener到'moveend'事件,所以事件一個大的infoWindow打開,然後'moveend'事件發生,我不想爲這個事情運行。 任何想法如何打開和關閉'moveend'事件監聽器?

+0

爲了將來的參考,這個問題可以通過包括具體的源代碼來顯示你現在擁有的東西。 – 2009-06-02 14:16:04

回答

4

您可以刪除一個事件偵聽器,但是當您添加一個偵聽器時必須傳遞返回的確切偵聽器。

例如

//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 
}