2010-05-28 126 views
20

要从地图中移除标准标记,我理解你只需调用marker.setMap(null),但是在实现Google Maps方向服务时,它会自动将标记A和B添加到地图(计算从A点到B点的方向)。我无法控制这些标记,因此无法以正常方式将其删除。那么我怎么去除这些标记(我在地图上有自定义标记)呢?从谷歌地图API V3中移除方向标记

+0

我有完全相同的问题。 – Natim 2010-05-31 13:47:51

+0

使用v2 API可以做同样的事情吗? – Jonathan 2010-08-10 01:45:59

回答

33

创建DirectionsRenderer对象时,将suppressMarkers选项设置为true,然后标记将不显示。您还可以更改标记的样式或图标。有关您可以设置的其他属性,请参见DirectionsRendererOptions的API规范。

... 
    directionsDisplay = new google.maps.DirectionsRenderer({suppressMarkers: true}); 
    ... 

编辑:它看起来像API差不多6年前改变了一点点,因为我原来的答案,所以从@乔尼 - 琼斯的答案是现在的正确方法。我调整了上面的例子来反映这一点。

+0

这使得诡计!谢谢 – Natim 2010-06-01 07:58:31

+0

是的,这正是我一直在寻找的。谢谢! – anonymous 2010-06-08 13:17:15

+1

DirectionsRenderer没有记录的'.suppressMarkers'属性。 – geocodezip 2016-02-03 19:47:41

33

我有类似的问题。以前的解决方案并没有帮助我。但我试过这个:

var directionsDisplay = new google.maps.DirectionsRenderer({suppressMarkers: true});
它的工作。