2013-05-08 109 views
0

我有以下情況:谷歌地圖API第3版事件

折線是在地圖上添加,並在用戶點擊了它的狀態更改爲可編輯的。另外我有事件,如果用戶點擊多段線的最後一個vertext,並開始移動鼠標,以便能夠用用戶正在繪製的鼠標路徑來擴展多段線。

但是,似乎當我有一個事件,並在這個事件中,我嘗試添加另一個它根本不起作用,我不kwow爲什麼。

爲了防止事情變得更簡單,我會粘貼一部分代碼。

google.maps.event.addListener(polyLine, "mousedown", function(event){ 
       if(polyLine.getEditable() === true) 
       { 
        if(typeof event.vertex !== "undefined") 
        {  
         if(event.vertex === polyLine.getPath().getLength() - 1) 
         { 
          polyLine.setEditable(false); 

           if(mouseMoveDrawingEvent === null) 
           { 
            map.setOptions({draggable:false}); 
            polyLine.setOptions({clickable:false}); 
            mouseMoveDrawingEvent = google.maps.event.addListener(map, "mousemove", function(event) 
            { 
             alert("1"); // <== this never fires 
             polyLine.getPath().push(event.latLng); 
             drawingLabel.setPoint(event.latLng); 
             drawingLabel.setContents("<div style='background-color:white'>" + (google.maps.geometry.spherical.computeLength(polyLine.getPath())/1000).toFixed(2) + " км.</div>"); 
            }); 
           }  

          map.getDiv().onmouseup = function(ev) { 
           polyLine.setOptions({clickable:true}); 
           map.getDiv().onmousedown = null; 
           map.getDiv().onmouseup = null; 
           google.maps.event.removeListener(mouseMoveDrawingEvent); 
           mouseMoveDrawingEvent = null; 
          }; 
         } 
        } 
       } 
      }); 

.....

THRE這裏是另一個事件偵聽「鼠標鬆開」 ....

。你們有什麼想法如何使這個代碼和平工作。

回答

0

我找到了解決我的問題。

問題是,當我設置折線{可點擊:假}該API刪除事件(並明顯在裏面:))