我正在使用GoogleMaps JS API V3和ClusterMarker。到目前为止,我有一个定制集群的工作地图。
我决定需要一个方法来打开infoWindow,其中包含点击群集的一些信息,包括一些锚定链接。
我在SO和Google上进行了一些搜索,并在StackOverflow answer中提出了这些内容。
var infoWindow = new google.maps.InfoWindow();
google.maps.event.addListener(markerCluster, 'clusterclick', function (clickedCluster) {
console.log(clickedCluster);
var center = clickedCluster.getCenter();
var latLng = new google.maps.LatLng(center);
// infowindow.setContent("Info Window");
// infowindow.setPosition(latLng);
// infowindow.open(map);
});
在console.log(clickedCluster)
我给了一个Cluster对象,它有6个方法,并且有很多属性。其中一个函数是getCenter()
,它返回“已点击的群集图标中心”。
当我取消注释这一行时:var center = clickedCluster.getCenter();
我收到错误,说getCenter()不是函数。
有人能帮助我解释一下我在这里做错了吗?
提前致谢
答案 0 :(得分:0)
因此问题的解决方案是clickedCluster
作为数组返回。以下工作很棒。
var infoWindow = new google.maps.InfoWindow();
google.maps.event.addListener(markerCluster, 'clusterclick', function (clickedCluster) {
var center = clickedCluster[0].getCenter();
var latLng = new google.maps.LatLng(center.lat(),center.lng());
infoWindow.setContent(getDailyDeals(center.lat(),center.lng()));
infoWindow.setPosition(latLng);
infoWindow.open(map);
});