2013-05-08 69 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删除事件(并明显在里面:))