添加 URL 到标记集群 google 地图 API 中的地图标记

adding URL to map marker in Marker Cluster google map API

所以基本上我想要做的是拥有一个地图集群,一旦您点击集群并点击单独的地图标记,您将被链接到我网站上的另一个页面。

这就是我目前所拥有的。但我似乎无法将 URLS 拉到不同的标记中。

   var map = new google.maps.Map(document.getElementById('map'), {
      zoom: 4,
      center: {lat: -39.3642, lng: 164.0444318}
    });


    // Add some markers to the map.
    // Note: The code uses the JavaScript Array.prototype.map() method to
    // create an array of markers based on a given "locations" array.
    // The map() method here has nothing to do with the Google Maps API.
    var markers = locations.map(function(location, i) {
      return new google.maps.Marker({
        position: location,
        url: "http://travelpark.co.nz" //Will be different for each marker
      });

    });


    // Add a marker clusterer to manage the markers.
  var markerCluster = new MarkerClusterer(map, markers,
            {imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'});
   }


   var locations = [
        {lat: -37.7862985, lng: 175.2773836},
      {lat: -37.8011434, lng: 174.871265}
   ]

   google.maps.event.addListener(markers, 'click', function() {
        window.location.href = this.url;
    });

底部的事件侦听器不起作用..我似乎无法弄清楚。任何帮助将不胜感激

将侦听器分配给每个标记对象而不是数组。使用您的 map 函数本身来避免 2 个 for 循环:

 var markers = locations.map(function(location, i) {
                   var marker =  new google.maps.Marker({
                                position: location,
                                url: "http://travelpark.co.nz" //Will be different for each marker
                                });
                   google.maps.event.addListener(marker, 'click', function(){
                                window.location.href = this.url;
                               });
                   return marker;
});