儘管花了整天的搜索和嘗試無數的代碼方法,但我仍然遇到了嘗試正確居中和縮放谷歌地圖的問題。谷歌地圖v3 - 設置界標到標記中心
我不知道是否有人會那麼善良,以指出我的代碼中我做錯了什麼。在v2中一切正常,但我很難更新到v3。
有關信息 地圖是一個更大的PHP應用程序的一小部分,並且所需要的緯度&長地圖參數已經通過它們在主PROG使用和聲明其他方法如下製得: -
var myDestination=new google.maps.LatLng(e_lat,e_long);
var myHome=new google.maps.LatLng(h_lat,h_long);
除了變焦和中心外,一切似乎都可以正常工作。 有問題的代碼如下: -
function initialize()
{
// set the map properties
var mapProp = {
center:myHome,
zoom:12,
mapTypeId:google.maps.MapTypeId.ROADMAP
};
var map=new google.maps.Map(document.getElementById("googleMap"),mapProp);
// set the home marker
var marker_home=new google.maps.Marker({
position:myHome,
icon:'house.png'
});
marker_home.setMap(map);
//set the destination marker
var marker_destination=new google.maps.Marker({
position:myDestination,
icon:'flag_red.png'
});
marker_destination.setMap(map);
//google polyline between the 2 points
var myPolyline = [myDestination,myHome];
var directPath = new google.maps.Polyline({
path:myPolyline,
strokeColor:"#0000FF",
strokeOpacity:0.8,
strokeWeight:2
});
directPath.setMap(map);
// Make an array of the LatLng's of the markers you want to show
var LatLngList = array (new google.maps.LatLng (e_lat,e_long), new google.maps.LatLng (h_lat,h_long));
// Create a new viewpoint bound
var bounds = new google.maps.LatLngBounds();
// Go through each...
for (var i = 0, LtLgLen = LatLngList.length; i < LtLgLen; i++) {
// And increase the bounds to take this point
bounds.extend (LatLngList[i]);
}
// Fit these bounds to the map
map.fitBounds (bounds);
}
google.maps.event.addDomListener(window, 'load', initialize);
TIA的任何幫助:)
它正在做什麼?你有任何的JavaScript錯誤?既然你只有2點,它應該沒有循環工作。你能提供一個鏈接到一個展現問題的地圖(或創建一個jsfiddle)嗎? – geocodezip 2013-03-09 07:49:07
它似乎顯示確定..只是fitBounds似乎不起作用,因此沒有正確地居中兩點之間。 http://jsfiddle.net/klaw/tQf9n/3/ – klaw 2013-03-09 11:36:49