【发布时间】:2012-06-10 16:06:53
【问题描述】:
如果标记在地图之外,我正在寻找一种方法来重新定位(聚焦)地图。例如,如果您单击不在您的视图区域中的标记... 标记 1:纽约标记 2:旧金山
在 V2 中,我采用这种方式...但对于 v3,containsLatLng 需要一个额外的库,并且对我不起作用...(请参阅我的另一篇文章:Google Maps v3 map.getBounds().containsLatLng is not a function)他们是否有任何其他方式可以专注于标记位置??
更新:
if ((!map.getBounds().contains(marker.getPosition())) & (showAllCategoryElements == 0)) {
var newCenterPointLng = (map.getBounds().getCenter().lng() + marker.getPosition().lng()) / 2;
var newCenterPointLat = (map.getBounds().getCenter().lat() + marker.getPosition().lat()) / 2;
map.panTo(marker.getPosition());
//map.setCenter(new google.maps.LatLng(newCenterPointLat, newCenterPointLng));
if (!map.getBounds().contains(marker.getPosition())){
map.zoomOut();
}
}
【问题讨论】:
-
您要的是在版本 3 或版本 2 中工作的代码吗?您同时拥有标签和版本 2 代码。
标签: google-maps google-maps-api-3 google-api google-maps-markers google-maps-api-2