2012-05-24 54 views
2

我最近開始使用Google Maps API v3。Google Map API v3 - 標記中心地圖

我需要繪製一些位置(可能是3或4),同時在這些位置上將地圖居中 - 而不是手動設置地圖的長和寬以中心爲...

有人可以分享一些提示,或指出我在正確的方向嗎?

在此先感謝! 丹

function initialize() { 
     var latlng = new google.maps.LatLng(51.50816, 0.02712); 
     var myOptions = { 
     zoom: 12, 
     center: latlng, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var firstmap = new google.maps.Map(document.getElementById("map"),myOptions); 
     //EVENT MARKER 
     var point = new google.maps.LatLng(51.50816, 0.02712); 
     var marker = new google.maps.Marker({ 
     position:point, 
     map:firstmap, 
     title: 'ExCel London', 
     draggable:false, 
     icon:'images/event.png' 
     }) 
     var contentstring = '<div>Hello World</div>' 
     var infoWindow = new google.maps.InfoWindow({ 
     content:contentstring 
     }); 
     //HOTEL 1 MARKER 
     var point = new google.maps.LatLng(51.503146, -0.113259); 
     var marker = new google.maps.Marker({ 
     position:point, 
     map:firstmap, 
     title: 'Waterloo Hotel', 
     draggable:false, 
     icon:'images/flag.png' 
     }) 
     var contentstring = '<div>Hello World</div>'; 
     var infoWindow = new google.maps.InfoWindow({ 
      content:contentstring 
     }); 
     google.maps.event.addListener(marker,'click',function(){ 
      infoWindow.open(firstmap,marker); 
     }) 
    }; 

回答

9

您需要保存一個陣列上的標記,然後使用功能中心:

function autoCenter(){ 
    var limits = new google.maps.LatLngBounds(); 
    $.each(arrayMarkers, function (index, marker){ 
     limits.extend(marker.position); 
    }); 
    map.fitBounds(limits); 
} 
+0

感謝您的幫助! –

+0

歡迎您:) – lfergon

+0

最佳答案;只有一個爲我工作... – user1477388