是否可以动态更改群集图标?标准不是群集中标记的数量,而是群集内数据的一些给定值。我需要根据这些数据每10秒更新一次图标。我没有找到任何样品,我想知道它是否可能。我试过跟随,但它有任何影响:
$.each(global.markersCluster.clusters_, function (index, cluster) {
cluster.clusterIcon_.index_ = 2;
cluster.clusterIcon_.url_ = '';
var eee = '';
});
答案 0 :(得分:0)
在Marker cluster documentation中,它显示您可以像这样创建标记群集
var markerCluster = new MarkerClusterer(map, markers,
{imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'});
}
因此,您可以使用标记。在这种情况下,有一个简短的条件,请记住,代码不会接受任何更复杂的事情,如语句,切换案例。
var markerCluster = new MarkerClusterer(map, markers,
{imagePath: imgPath = (markers < 10) img1 : img2'});
}
在这种情况下,我要做的是将一个markerclusterer创建封装在一个函数中,并每隔10秒调用一次。
function updateMarkerClusterer(newIcon, oldMarkerClusterer) {
var map = oldMarkerClusterer.getMap(),
markers = oldMarkerClusterer.getMarkers();
oldMarkerClusterer.clearMarkers();
var updatedMarkerCluster = new MarkerClusterer(map, markers,
{imagePath: newIcon});
}
}
在这种情况下,您删除群集并再次创建它,您还可以尝试使用resetDraw()和resetViewport()方法。 以下是MarkerClusterer for Google Maps v3参考资料以获取更多信息。