문제

간단한 Google지도 응용 프로그램을 개발합니다. 지도에 하나의 마커를 배치하면됩니다. 어떤 이유로 든 마커는지도의 가시 영역 외부에 배치됩니다. 지도가 마커 좌표에 중심이 있기 때문에 조금 이상합니다. 코드는 다음과 같습니다.

var point1 = new GLatLng(location1.lat,location1.lon);              
    map1.setCenter(point1, 15);
var marker1 = new GMarker(point1);
map1.addOverlay(marker1);
map1.setCenter(point1);

지도를 조금 드래그하면 마커를 볼 수 있습니다. 필요한 것은지도를 드래그하지 않고 마커를 볼 수있는 방식으로지도를 중앙으로하는 것입니다.

누구든지 나를 도울 수 있습니까?

도움이 되었습니까?

해결책

나는 glatlng 객체가 문자열 인수도 받아 들일 것이라고 믿지만 안전하기 위해서는 그들이 정수인지 확인한다.

new GLatLng(parseInt(location.lat), parseInt(location.lon));

또한 Map.SetCenter에 두 번째로 전화를 걸어야 할 것을 알았습니다.

다음 코드를 사용하면 실제로 수행해야합니다

  map=new GMap(document.getElementById("map"));
  var point = new GLatLng(parseInt(location.lat), parseInt(location.lon));
  map.setCenter(point,5);
  var marker = new GMarker(point);
  map.addOverlay(marker);

여전히 문제가있는 경우 .lat 및 .lon 값이 올바르게 채워 지는지 확인하기 위해 해당 "위치"객체를 확인합니다.

다른 팁

이 코드를 확인하십시오.

var map = new GMap(document.getElementById("map"));
/* -- snip -- */
map.centerAndZoom(new GPoint(-1.2736, 53.0705), 8);

내가 얼마 전에 만든 웹 사이트에서. 소스를 자유롭게 확인하십시오.

http://www.primrose-house.co.uk/localattractions

오른쪽 상단의 링크를 클릭하여 맵보기로 전환하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top