我有一個簡單的Google地圖填充整個頁面。 下面是一個示例:Google地圖以最小縮放範圍爲界
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Google Maps JavaScript API v3 Example: Marker Animations</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var stockholm = new google.maps.LatLng(59.32522, 18.07002);
var map;
function initialize() {
var mapOptions = {
zoom: 0,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: stockholm
};
map = new google.maps.Map(document.getElementById("map_canvas"),
mapOptions);
google.maps.event.addListener(map, 'idle', function() {
var b = map.getBounds();
document.getElementById("bounds").innerText = b.getSouthWest().lng() + ", " + b.getNorthEast().lng();
});
}
</script>
</head>
<body onload="initialize()">
<div id="map_canvas" style="width: 100%; height: 100%;">map div</div>
<div id="bounds" style="left: 100px; top: 0px; width: 300px; height: 30px; position: absolute; background-color: #a0a0a0;"></div>
</body>
</html>
最低縮放級別,當你可以看到幾個世界地圖,我希望經度範圍爲-180 - 180,但在真正的我不明白這一點。我的期望錯了嗎?爲什麼?
在實際應用程序中,我有一個服務器端代碼,根據當前地圖邊界從數據庫中提取標記。
不清楚你在這裏問什麼。提供您所看到的內容,期望看到的內容以及它們的不同之處的具體細節。 – Cheeso
如果您運行我的示例(我剛將縮放級別更改爲0),您將看到以下經度值或類似:'-159.11748,-164.7424800000001'。我期望看到'-180,180',因爲此時此圖完全可見。 –
返回的邊界顯然是在地圖div的遠西和遠東顯示的經度。所以如果你有一個「全世界」的顯示器,並且第180次子午線不是與div的左側精確對齊,那麼你將得到除-180和+180之外的其他值作爲界限。以前人們遇到過這個問題:http://code.google.com/p/gmaps-api-issues/issues/detail?id=2009你似乎想要的是地圖的「未包裝」邊界。我不確定如何在Google maps v3 API中執行此操作。 – Cheeso