我目前正在使用Google地图标记和标签控件。我可以动态地为地图分配一个标记,并为该标记提供一个标签。在Google地图上使用MarkerWithLabel隐藏标记
我已经想通了如何隐藏标签,但是,我对如何隐藏图标并显示标签有点遗憾。任何人对此有一些建议?
markerWithLabel.setMap(null);
删除标记和标记,而不仅仅是标记。
我目前正在使用Google地图标记和标签控件。我可以动态地为地图分配一个标记,并为该标记提供一个标签。在Google地图上使用MarkerWithLabel隐藏标记
我已经想通了如何隐藏标签,但是,我对如何隐藏图标并显示标签有点遗憾。任何人对此有一些建议?
markerWithLabel.setMap(null);
删除标记和标记,而不仅仅是标记。
很简单,只需设置一个透明的图像作为图标。在这里我设置一个1x1的透明GIF - pixel_trans.gif - 作为图标点击MarkerWithLabel时:
var marker = new MarkerWithLabel({
...
});
google.maps.event.addListener(marker, 'click', function() {
this.setIcon('pixel_trans.gif');
});
中提琴,被点击时它的标记是隐藏的,但标签的立场。它是而不是可能隐藏图标,并且只显示MarkerWithLabel的current version中的标签。
注意:你要通过在此之前是去工作,如存在图像的有效图像。使用setIcon
使用null或无效图像将被忽略。一个1x1的透明GIF恕我直言,是一个可接受的解决方案,因为用户将有丰富的经验,该标记是隐藏的,并有啊***努力一下就可以了:)
@barry MSIH答案应该标记为正确的方式 –
我能够隐藏一个麻烦通过将图标设置为空字符串“”来标记。
var marker = new MarkerWithLabel({
icon: " ",
position: location,
draggable: true,
raiseOnDrag: true,
map: map,
labelContent: z,
labelAnchor: new google.maps.Point(22, 0),
labelClass: "labels", // the CSS class for the label
labelStyle: {opacity: 0.75},
});
非常干净的解决方案。奇怪的是,它的工作原理 - 这似乎根本不需要任何东西(如果不存在的路径将在大量的404请求中解析)。 – cspiegl
你能分享你迄今为止所做的一切吗?你是什么意思的标签.. –
如果你想单独控制他们,你可能需要修改该代码。或者将标签放在地图上而不依赖于标记(例如,使用[InfoBox作为标签](http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/examples/infobox-label .html)和一个正常的google.maps.Marker标记) – geocodezip