Google地图缩放级别

感谢作者,我从本网站使用谷歌地图api。

这是代码的一部分:

 function initMap() {
 map = new google.maps.Map(document.getElementById("map"), {
 center: new google.maps.LatLng(0, 0),
 zoom: 14,
 mapTypeId: google.maps.MapTypeId.ROADMAP,
 mapTypeControl: false,
 mapTypeControlOptions: {
 style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR
 },
 navigationControl: true,
 navigationControlOptions: {
 style: google.maps.NavigationControlStyle.SMALL
 }
 });
  <?
 $query = mysql_query("SELECT * FROM markers WHERE ID='1'");
 while ($row = mysql_fetch_array($query)){
 $name=$row['name'];
 $lat=$row['lat'];
 $lon=$row['lng'];
 $desc=$row['address'];
  echo ("addMarker($lat, $lon,'<b>$name</b><br/>$desc');n");
 }
 ?>
 center = bounds.getCenter();
 map.fitBounds(bounds);

不过,我在调整缩放级别时遇到了一个问题,它将其设置为14,但无论我更改了什么值,它都保持不变。

我从下面的评论中读到,有人建议删除这一行:map.fitBounds(bounds);

我删除它,但地图的中心移动到其他位置,我认为这是(0,0)。

有没有办法解决这个代码的缩放问题? 我试图编辑所有的大小虽然..但我不熟悉谷歌地图编码。

谢谢。


替换为:

center = bounds.getCenter();
 map.fitBounds(bounds);

有:

map.setCenter(bounds.getCenter());

bounds.getCenter()将返回由addMarker()扩展的边界的计算中心


看起来您在创建地图时设置了缩放级别,但是然后map.fitBounds()更改缩放级别以包含边界。

使用fitBounds设置视口后,请尝试设置缩放级别。

...
map.fitBounds(bounds);
map.setZoom(14);

在这里你可以选择你想要的地图center: new google.maps.LatLng(0, 0),

Ofc,用其他数字代替0,0 - 这些是经度和纬度。 那么你不会需要合适的界限 - 删除它。

缩放:14将工作(和任何其他号码)。 它现在不能工作,因为它的边界很大,并且试图将所有区域放在这些边界内,并尽可能使用MAX缩放,以显示整个区域。

链接地址: http://www.djcxy.com/p/81569.html

上一篇: Google map zoom level

下一篇: Using setZoom() after using fitBounds() with Google Maps API V3