3
내 앱에는 위치와 항목이라는 두 종류의 마커가 표시됩니다. 항목을 위치로 드래그 앤 드롭 할 수 있기를 바랍니다.다른 마커에 마커 놓기
그러나 마커를 드래그하면 해당 마커에서 끌기의 mouseover
이벤트가 실행되지 않습니다.
사람이 효과를 만들 수있는 방법을 알고 있다면, 내가
내 앱에는 위치와 항목이라는 두 종류의 마커가 표시됩니다. 항목을 위치로 드래그 앤 드롭 할 수 있기를 바랍니다.다른 마커에 마커 놓기
그러나 마커를 드래그하면 해당 마커에서 끌기의 mouseover
이벤트가 실행되지 않습니다.
사람이 효과를 만들 수있는 방법을 알고 있다면, 내가
내가 미터 중 실제 거리, 당신의 최선의 방법은 대상의 거리에 따라 그것을 구현하는 것입니다 생각 :-) 영원히 greatfull 것 또는 스크린 거리 (픽셀 단위). 다음
var locations = Array();
var items = Array();
과 : 여기
var itemMarker = new google.maps.Marker(opts);
google.maps.event.addListener(itemMarker, 'drag', function(){
for(var n = 0; n < locations.length; n++){
var d = google.maps.geometry.spherical.computeDistanceBetween(this.getPosition(),locations[n].getPosition());
if (d < 5){
// do something when below a given threshold.
}
}
});
items.push(itemMarker);
데모 : 예를 들어
http://maps.forum.nu/v3/gm_template_simple.html (. 시카고를 향해 오마하 마커를 드래그) 당신이를로드 할 때 형상 라이브러리를로드하는 것을 잊지 마십시오 API.
나는 비슷하지만 덜 우아하고 추가 대상을 사용하여 작업을 마쳤습니다. 내 솔루션에서 각 위치는 드롭 존 서클을 얻습니다. 원의 지름은 다음과 같이 계산됩니다. Math.pow (2, 21 - map.getZoom())/2 이것은 5가 나타내는 것입니다. –
값 5는 특별한 의미가 없습니다. 그것은 단지 예일뿐입니다. 다행 이네. :-) – Marcelo
5는 두 마커 사이의 거리입니다. 그러나 더 낮은 줌 레벨을 고려하여 거리를 늘려야합니다. 이것은 5를 Math.pow (2, 21 - map.getZoom())/2로 대체 한 이유입니다.이 방법으로 원의 크기는 미터 단위로 작지만 화면을 확대 할 때 같은 크기로 유지됩니다 –