单个集群图标的自定义图标

Custom Icon for individual cluster icon

本文关键字:图标 自定义 单个集      更新时间:2023-09-26

我想为集群设置一个自定义图标。我的要求如下:

我有许多记号笔…在一个集群中分组,我想要的图标所示对应于有日期的标记的图标最近。(marker.date)

有什么提示吗?

MarkerClusterer for Google Maps v3具有setCalculator(calculator:function(Array|number))功能,可用于覆盖MarkerClusterer上的标签设置:

var calc = function(markers, numStyles) {
    var maxDate = new Date('01-01-1970');
    for (var i = 0; i < markers.length; i++) {
        var currentDate = new Date(markers[i].date);
        if (maxDate < currentDate){
            maxDate = currentDate;
        }
  }
  return {text: maxDate.getDate()  + "-" + (maxDate.getMonth()+1) + "-" + maxDate.getFullYear(), index: 4};
}
markerCluster.setCalculator(calc);

假设您的Markerdate自定义字段:

var clusterMarkers = [
    new google.maps.Marker({
        position: new google.maps.LatLng(59.381059,13.504026),
        map: gm_map,
        title:"P1220214 1.JPG",
        date: '2015-10-10'
    }),
.....
];

指出:

  • 正确的错误处理(当从string转换到Date时)应该添加

  • 计算器index值设置为4,因此它可以显示整个日期(如。2015-12-12)。如果将其更改为较小的值,日期标签将获得剪除。

演示小提琴:http://jsfiddle.net/RGS5b/181/