Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除特定的谷歌地图标记_Javascript_Google Maps_Google Maps Api 3_Google Maps Markers_Marker - Fatal编程技术网

Javascript 删除特定的谷歌地图标记

Javascript 删除特定的谷歌地图标记,javascript,google-maps,google-maps-api-3,google-maps-markers,marker,Javascript,Google Maps,Google Maps Api 3,Google Maps Markers,Marker,我正在为一个web应用程序使用Google Maps API,并试图根据输入距离删除一组标记,但我所能做的就是使用Google API文档中的以下代码删除所有标记: clearMarkers(); markers = []; 如何跟踪每个标记并分别删除/隐藏它?您可以使用 marker.setMap(null); 要隐藏在数组中的每个标记 例如: for (var i = 0; i < markers.length; i++) { if (markers[i].filte

我正在为一个web应用程序使用Google Maps API,并试图根据输入距离删除一组标记,但我所能做的就是使用Google API文档中的以下代码删除所有标记:

clearMarkers();

  markers = [];
如何跟踪每个标记并分别删除/隐藏它?

您可以使用

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);
    }
}
for(变量i=0;i
遍历标记并调用函数或对每个标记进行输入距离测试,如果测试失败,则将映射设置为null

markers.forEach(function(m) {
  if (!matchesInputDistance(m)) {
     m.setMap(null)
  }
}
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);
                        });