2013-05-28 67 views
0

我是JS的新手,我的事件處理程序被我的bing地圖信息框兩次調用時遇到了一些問題。我認爲這是因爲mouseup和mousedown。但是,我不知道如何檢查事件是鼠標移動還是鼠標移動(無法在任何地方的文檔中找到它)。任何人都有任何想法如何檢查mouseEvent是鼠標移動還是鼠標移動?下面是該文檔的鏈接的信息框事件處理程序:Bing Info Box docs事件處理程序調用兩次(javascript)

infoBox.setOptions({ 
        actions : [ { 
         label : "Edit", 
         eventHandler : function(mouseEvent) { 
          // Called twice here... 
         } 
        } ] 
       }); 

回答

2

我不知道兵信息框什麼,但假設mouseEvent是觸發處理程序的事件對象,你可以把在條件事件處理程序來處理該事件,如果這是一個鼠標按下,但如果它是一個鼠標鬆開:

... 
eventHander : function(mouseEvent) { 
    if (mouseEvent.type === "mousedown") { 
    // do stuff 
    } 
} 
... 

編輯

如在下面的評論指出,這種實現方式這與Bing信息框是檢查if (mouseEvent.type === 'click')

+1

解決:而不是檢查mousedown我不得不檢查點擊:e.type ===「點擊」 – thunderousNinja

相關問題