-1

我正在使用Google Maps API作为网络应用程序,而且我试图根据输入距离删除一组标记,但我所能做的就是删除所有标记下面的代码我的谷歌阿比的文档中找到:删除特定的Google地图标记

clearMarkers(); 

    markers = []; 

我怎能每个标志物的跟踪和删除/隐藏单独它?

回答

1

您可以使用

marker.setMap(null); 

给每个你在阵列中想隐藏的标记。

例如:

for (var i = 0; i < markers.length; i++) { 
    if (markers[i].filter == filter) 
    { 
     markers[i].setMap(map); 
    } 
    else 
    { 
     markers[i].setMap(null); 
    } 
} 
0

迭代通过标记和调用功能或做你的输入测试距离上的每个标记,然后将地图如果测试失败为null。

markers.forEach(function(m) { 
    if (!matchesInputDistance(m)) { 
    m.setMap(null) 
    } 
} 
0
function clearMarkerSelected() { 
       if (markerSelected) { 
        markerSelected.setEditable(false); 
        markerSelected = null; 
       } 
      } 

function setMarker(marker) { 
        markerSelected = marker; 
        marker.setDraggable(true); 
       } 
google.maps.event.addListener(newShape, 'click', function() { 
          setMarker(newShape); 
         });