在实现 MarkerClusterer 之前,我已经能够通过首先加载标记数组来触发特定标记的点击事件(然后会显示一个特定于该标记的面板),如下所示:
markers[marker.id] = marker;
(其中 marker.id 是从 JSON 中绘制标记时设置的属性,对应于我数据库中的用户记录)
然后调用:
google.maps.event.trigger(markers[id], 'click');
(其中 'id' 是我要为其单击标记的用户 ID)
但是现在我想使用 MarkerClusterer,它不会使用我上面使用的数组加载方法进行聚类,我假设因为我的标记数组中存在“间隙”,因为我没有为所有用户绘制标记。
...当我像这样加载我的标记数组时,MarkerClusterer 工作:
markers.push(marker);
我假设这给出了一个连续的数组,没有 MarkerClusterer 可以读取的间隙......但现在我无法通过它在数组中的索引触发正确的标记点击。
所以看来我需要一种在基于marker.id的连续标记数组中找到.indexOf标记的方法......
任何帮助将非常感激。