我使用Google Maps API作为网络应用,我尝试根据输入距离删除一组标记,但我所能做的就是使用以下代码删除所有标记我在google Api的文档中找到了:
clearMarkers();
markers = [];
如何跟踪每个标记并单独删除/隐藏它?
答案 0 :(得分: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);
}
}
答案 1 :(得分:0)
遍历标记并调用函数或对每个标记执行输入距离测试,然后在测试失败时将映射设置为null。
markers.forEach(function(m) {
if (!matchesInputDistance(m)) {
m.setMap(null)
}
}
答案 2 :(得分: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);
});