我正在使用来自http://code.google.com/p/gmaps-utility-library-dev/的GMaps V3和MarkerClusterer
地图上显示的标记是用户定义的,并且经常折叠,因此无论您放大多少,聚集器总是显示在一个位置有多个项目。但是用户应该能够单击每个单独的标记来查看信息窗口。你知道怎么处理这件事吗?
我试着对服务器上的位置进行了一些随机化,但随机性不够,标记不断崩溃,只是不太频繁。
发布于 2011-08-03 14:05:35
在我之前的回答中回复OP的评论,因为它不适合评论框:
这会阻止clusterer对标记进行分组,但当坐标相同时,所有标记都会彼此重叠。你知道解决这个问题的方法吗?
我认为这是谷歌地图的预期行为-如果标记有完全相同的lat/lng,那么你就会得到一个又一个标记。
一种可能的解决方法是只向地图添加第一个标记,然后当您尝试向已经定义的lat/lng添加另一个标记(使用JS映射跟踪它们)时,您可以添加计数(或构建标记信息数组),并使用该信息更新infowindow文本。例如,点击标记就会显示一个信息窗口,说明在这个位置有15个“东西”,然后在它下面的列表中列出它们的名称和属性……
另一种可能是通过在小数lat/lng的末尾添加一个随机数来“抖动”后续标记。这样,当用户全程放大时,标记将略有偏移。不过,这个选项感觉有点“脏”。
发布于 2011-07-25 08:24:00
我遇到了这个问题,并通过定义一个低于谷歌地图maxZoom的构造函数属性"maxZoom“解决了这个问题:
var markerCluster = new MarkerClusterer(map, markers, { maxZoom: 18 });发布于 2010-11-07 06:44:44
在添加标记时,您可以检查在同一位置是否有其他标记,并且在信息窗口中,您可以注意到有多个标记。
https://stackoverflow.com/questions/4111080
复制相似问题