当前位置: 首页 > 知识库问答 >
问题:

前端 - js 谷歌地图有清除所有标记/覆盖物的方法吗?

周锐
2023-08-18

谷歌地图有清除所有标记/覆盖物的方法吗

虽然知道可以marker.setMap(null)来清除标记.但标记有很多,而且可能还不在一个数组里(比如标记点数组arr,通过点击事件添加的标记点marker1,marker2..),有没有类似高德clearMap的方法一下清除所有标记或者覆盖物?

共有1个答案

慕容恩
2023-08-18

用这个方法:

var markers = [];function addMarker(marker) {  markers.push(marker);}function clearMarkers() {  for (var i = 0; i < markers.length; i++) {    markers[i].setMap(null);  }  markers = [];}var marker = new google.maps.Marker({  position: myLatLng,  map: map,  title: 'Hello World!'});addMarker(marker);clearMarkers();

查了文档没有:https://developers.google.com/maps/documentation/javascript/m...

 类似资料:
  • 我知道周围也有类似的问题,但我无法找到一个可靠的答案,这是我的问题:有没有什么方法可以在没有谷歌地图引用的情况下将标记存储在ArrayList(或任何其他存储)中,然后简单地将它们添加到我的地图中? 背景:我有一个应用程序,目前有大约3500个标记。每个标记还有一个与之相关联的数据(布尔数组存储每个标记的数据,用于根据用户交互使它们可见/不可见)。目前,我使用扩展AsyncTask的类来获取这些标

  • 我已经尝试在这里和谷歌地图API留档上查看了大量的代码块,但仍然无法找出如何隐藏标记。 这是我正在使用的当前代码,它在一个实例中有效。有一次,我在带有标记的函数中添加了“for”循环。setMap(null)Firefox显示以下错误: markers.set地图不是一个函数 附加信息:校园地图和完整代码(不包括地图API)

  • 我有一个函数,以一个地名作为输入,并在谷歌地图上那个地方的lat和lng位置下降一个pin。它还使用lat和lng位置设置边界,将pin设置为Viewport。一切都很好,但旧的标记没有得到清除,而添加一个新的标记。我已经清除了标记数组,但它不起作用。这是我的代码

  • 我目前在我的应用程序中为谷歌地图设置了一个覆盖图,用于谷歌地图活动。 图像排列完美,但当您离开覆盖区域时,您会看到正常的谷歌地图视图。 我想隐藏除自定义覆盖之外的所有内容,我如何才能做到这一点? 为了防止用户从相机放大的地方缩小并丢失自定义覆盖,我可以将用户锁定在特定gps坐标范围内吗?(自定义覆盖所覆盖的区域)

  • }; 这是在displayRoute()函数之前使用的