如何隐藏 Google 地图中集群标记上的数字?

问题描述 投票:0回答:4

所以我有这个:

但我想要的是这个:

我很确定应该有一个我可以在这里指定的选项:

var options = {
    gridSize: 80,
    imagePath: imagePath ,
    someOption : iAmMissing ??
}
var mc = new MarkerClusterer(map, mapmarkers, options);
google.maps.event.addListener(mc, 'clusteringend', function(){
    setTimeout(fixMyPageOnce, 1);
});

但我似乎找不到选择。这是正确的地方还是有其他方法可以去掉圆圈中的数字?

google-maps google-maps-markers
4个回答
5
投票

只需将

textColor
设置为
transparent

var options = {
    textColor: 'transparent',
    gridSize: 80,
    imagePath: imagePath ,
    someOption : iAmMissing ??
}

4
投票

您可以只使用“styles”选项并将“textSize”选项设置为略高于0:

var options = {
        gridSize: 80,
        styles: [{
                url: imagePath,
                height: 29,
                width: 29,
                anchor: [0, 0],
                textSize: 0.001
              }, {
                url: imagePath,
                height: 49,
                width: 49,
                anchor: [0, 0],
                textSize: 0.001
              }, {
                url: imagePath,
                width: 65,
                height: 65,
                anchor: [0, 0],
                textSize: 0.001
              }]
    }

它对我有用。


3
投票

创建一个自定义“计算器”函数,将返回值的“text”属性设置为“”。

calculator: function(markers, numStyles) {
  var index = 0;
  var count = markers.length.toString();

  var dv = count;
  while (dv !== 0) {
    dv = parseInt(dv / 10, 10);
    index++;
  }

  index = Math.min(index, numStyles);
  return {
    text: "",
    index: index,
    title: count
  };
}

概念证明小提琴

代码片段:

function initialize() {
  var center = new google.maps.LatLng(52.4357808, 4.991315699999973);
  var mapOptions = {
    zoom: 12,
    center: center,
    mapTypeId: google.maps.MapTypeId.TERRAIN
  };

  map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
  for (i = 0; i < markers.length; i++) {
    addMarker(markers[i]);
  }
  markerCluster = new MarkerClusterer(map, gmarkers, {
    imagePath: 'https://cdn.rawgit.com/googlemaps/v3-utility-library/master/markerclustererplus/images/m',
    calculator: function(markers, numStyles) {
      var index = 0;
      var title = "";
      var count = markers.length.toString();

      var dv = count;
      while (dv !== 0) {
        dv = parseInt(dv / 10, 10);
        index++;
      }

      index = Math.min(index, numStyles);
      return {
        text: "",
        index: index,
        title: count
      };
    }
  });
}
var gmarkers = [];
var markers = [];
var infowindow = new google.maps.InfoWindow({
  content: ''
});
var markerCluster;

// Our markers
markers = [
  ['0', 'Title 1', 52.4357808, 4.991315699999973, 'car'],
  ['1', 'Title 2', 52.4357808, 4.981315699999973, 'third'],
  ['2', 'Title 3', 52.4555687, 5.039231599999994, 'car'],
  ['3', 'Title 4', 52.4555687, 5.029231599999994, 'second']
];

function addMarker(marker) {
  var title = marker[1];
  var pos = new google.maps.LatLng(marker[2], marker[3]);
  var content = marker[1];

  var marker = new google.maps.Marker({
    title: title,
    position: pos,
    map: map
  });

  gmarkers.push(marker);

  google.maps.event.addListener(marker, 'click', (function(marker1, content) {
    return function() {
      infowindow.setContent(content);
      infowindow.open(map, marker);
    }
  })(marker, content));
}
google.maps.event.addDomListener(window, "load", initialize);
html,
body,
#map-canvas {
  width: 100%;
  height: 100%;
}
<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,places&key=AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk"></script>
<script src="https://unpkg.com/@googlemaps/markerclustererplus/dist/index.min.js"></script>
<div id="map-canvas"></div>


0
投票

@geocodezip --- 效果很好,第一次尝试。谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.