2012-04-19 3 views
2

완벽하게 작동하는 폴리 라인 용 코드가 있습니다. 각 위치 지점에 마커를 추가하려면 어떻게해야합니까?Google지도 폴리 라인과 마커 함께 사용

var userCoor = [ 
<?php 
for($i=0; $i<sizeOf($lat); $i++) 
echo "new google.maps.LatLng({$lat[$i]}, {$long[$i]}),"; 
?> 
]; 

var userCoordinate = new google.maps.Polyline({ 
path: userCoor, 
strokeColor: "#FF0000", 
strokeOpacity: 1, 
strokeWeight: 2 
}); 

userCoordinate.setMap(map); 

나는

var infowindow = new google.maps.InfoWindow(); 

var marker, i; 

for (i = 0; i < userCoor.length; i++) { 
    marker = new google.maps.Marker({ 
    position: new google.maps.LatLng(userCoor[i][1], userCoor[i][2]), 
    map: map 
    }); 

    google.maps.event.addListener(marker, 'click', (function(marker, i) { 
    return function() { 
     infowindow.setContent(userCoor[i][0]); 
     infowindow.open(map, marker); 
    } 
    })(marker, i)); 
} 
} 

마커가없는 것 같다 시도? 어떤 생각? 감사.

+0

당신은 userCoor이'content' 블록과 두 개의 수레를 들고 배열에 new.google.maps.LatLng에서 어떻게되는지 설명 할 수 있습니까? –

답변

3

여기 가짜 데이터로 테스트했는데 문제가없는 것 같습니다. 차이점은 폴리 라인에 userCoorPath을 사용하고 마커를 설정하려면 userCoor입니다. 나는 정보를 반복하고 있지만 다르게 사용되고 있습니다. 하나는 LatLng 배열이고, 다른 하나는 문자열 배열과 두 개의 수레입니다.

http://jsfiddle.net/nSf9N/

0

마커 icon 속성을 설정하지 않았습니다.

또한 마커 변수를 덮어 쓰는 중입니다. 아마 그게 그걸로 관련이 있습니다. 루프 내에서 마커 변수 정의를 movinf하십시오.

+0

사실 마커는 모든 좌표가 아닌 첫 번째 점 자체에 나타났습니다. – cicakman