0

我想在谷歌地图上画标记。标记数据来自 JSON。(来自 json 文件,而不是来自数据库)并且所有数据都具有几何形状(纬度、经度)

重要的是当我拖动谷歌地图时,浏览器会显示一些边界。

然后标记必须仅显示在显示的地图上。

再次拖动地图后,标记重置并在新边界显示新标记。

google.maps.event.addListener(map, 'dragend', function(event) {
  var bd = map.getBounds();
  var ne = bd.getNorthEast();
  var sw = bd.getSouthWest();
  var nw = new google.maps.LatLng(ne.lat(), sw.lng());
  var se = new google.maps.LatLng(sw.lat(), ne.lng());

我不能再进步了。。

请提供一些示例网址或帮助..

4

1 回答 1

0

因此,您已经获得了某种边界的 4 个角的点,并且您想在其中放置一个标记。所以你有一堆标记,但你只想绘制那些落在当前范围内的标记。

所以这样的事情可能会起作用:

var latlng = new google.maps.LatLng(54.42838,-2.9623);
var marker = new google.maps.Marker({
    position: latlng, 
});

if (bd.contains(latlng)) {
    marker.setMap(map);
}

您可能想要setMap(null)任何超出范围的标记。

于 2011-09-20T10:44:39.383 回答