2012-01-06 2 views
0

지도 위에있는 절대적으로 위치한 dom 요소 (이 요소는 마우스 뒤를 잇습니다)에서 마우스 이벤트가 맵에서 트리거됩니다. mouseup 요소를지도에서 직접 마우스를 올려 놓은 것처럼 맵에서 트리거하고 싶습니다. 가장 중요한 것은 마우스 버튼을 놓은 위치의 latLng 좌표를 원한다는 것입니다. 다음은 내 코드의 관련 부분입니다 (마우스를 따르는 요소와 관련). 수동으로 마우스 이벤트를 실행해도 latLng이 표시되지 않습니다.

var mouseup = google.maps.event.addListenerOnce(_map, 'mouseup', function(event) { 
    placeMarker(event.latLng); 
    addPinClone.remove(); 
    return bean.remove(window, "mousemove.window__temp__"); 
}); 

var addPinClone = $("<div class='map-add-pin'>").css({ 
    opacity: .4, 
    position: "absolute" 
}).mouseup(function(evt) { 
    return google.maps.event.trigger(_map, "mouseup", evt); 
}).appendTo("#map"); 

내가 직접지도를 클릭하면

, 내 mouseup 이벤트에 event.latLng를 얻을. 떠 다니는 요소에서 이벤트를 트리거 할 때 나는 그렇지 않습니다.

addPinClone에서 mouseup 기능을 생략하려고했는데, 이벤트가 제대로 맵에 맞춰지기를 바랬지 만 작동하지 않았습니다.

여기에서 latLng을 어떻게 가져 옵니까?

답변

1

mouseup은 Map 클래스의 문서화 된 이벤트가 아닙니다. 마커, 다각형, 사각형 및 원형에 표시되어 있습니다 (즉,지도에서 드래그하는 것). 그래서 나는 당신이 그 사건을 일으키는 것이 불가능하다고 생각할 것입니다. 재미있는 일이지만지도를 정상적으로 클릭하면 아무 일도 일어나지 않습니다.

+0

아, 네 말이 맞아. 제 유스 케이스에는 드래그 스타트, 드래그 앤드 드래그가있는 것 같습니다. 환상적! – benekastah

관련 문제