2011-02-21 5 views
4

Google Maps API v3를 사용하고 있습니다.구글 맵스 - 오픈 마커 infowindow 주어진 좌표

자바 스크립트를 사용하면 좌표가 주어진 표식의 정보창을 어떻게 열 수 있습니까?

+0

몇 가지 코드를 알려주세요. 마커가 저장되어 있습니까? – kjy112

+0

예 마커가 저장되고지도에 표시됩니다. 나는지도 외부에있는 링크 목록을 가지고 있는데, 현재 클릭 할 때 좌표를지도 중앙에 놓고 있지만지도에 표시된 정보 창을 좌표로로드하려고합니다. – raklos

+0

pls가 jsbin 또는 jsfiddle에서 코드를 공유하므로 잠시 후에 고칠 수 있습니다. ;) –

답변

11

다음은 마커가있는지도 JavaScript 상호 작용의 "외부"수행 방법을 보여주는 Jsfiddle입니다. 예, 마커를 저장해야하며 배열에 적절한 InfoWindow가있어 액세스 할 수 있습니다. 두 개의 무작위 마커를 만들고 배열 배송에서 좌표를 사용합니다. 여기

는 HTML 링크를 클릭하면 제조자 (1)에 중앙과의 정보창을 팝업 마커 2 바이스 반대를위한 것이 개 일반적인 링크가 있습니다 createMarker 내

<div id='map_canvas'></div> 
    <a href='#' onClick="gotoPoint(1);">Click for marker 1</a><br/> 
    <a href='#' onClick="gotoPoint(2);">Click for marker 2</a> 

내가 함께 만들어 메이커를 저장의 InfoWindow를 연결하고 전역 범위의 마커 배열로 밀어 넣습니다. 여기 gotoPoint에서

function createMarker(lat, lon, html) { 
    var newmarker = new google.maps.Marker({ 
     position: new google.maps.LatLng(lat, lon), 
     map: map, 
     title: html 
    }); 

    newmarker['infowindow'] = new google.maps.InfoWindow({ 
      content: html 
     }); 

    google.maps.event.addListener(newmarker, 'mouseover', function() { 
     this['infowindow'].open(map, this); 
    }); 

    marker.push(newmarker); 
} 

내가 단순히 매개 변수로 마커 번호를 엉덩이 : 마커를 가져, 그것은 그 동료의 정보창을 열 수 있습니다. 나는 기본적으로 new google.maps.LatLng를 사용하여 마커의 그것과지도의 중심을 설정하고 marker[myPoint-1].position.lat();marker[myPoint-1].position.lng();를 호출하여 마커의 위도와 LNG를 사용하고 marker[myPoint-1]['infowindow'].open(map, marker[myPoint-1]);과의 연관 정보창을 엽니 다

function gotoPoint(myPoint){ 
    map.setCenter(new google.maps.LatLng(marker[myPoint-1].position.lat(), marker[myPoint-1].position.lng())); 
    marker[myPoint-1]['infowindow'].open(map, marker[myPoint-1]); 
} 

당신은 어떤이 있으면 알려주세요 이 예제에 대한 질문.

+0

예 : http://nerddinner.com/ Google지도가 아니라 링크를 가리키면 창을로드합니다. – raklos

+0

@raklos 예, 약간의 코드를 입력하는 데 몇 분만 줄 수 있습니다. – kjy112

+0

한 번에 하나의 정보창 만 열어 두었다면이 코드를 어떻게 사용 하시겠습니까? – MrBliz

관련 문제