我刚刚开始使用google maps api的第3版,我正在进行一个简单的群集实现,但我不能让它工作。也许你可以看到我的错误在哪里,并帮助我使它工作:
var map;
function runmap() {
//Prepare cordinates
var myLatlng = new google.maps.LatLng(-34.397, 150.644);
//Prepare other options
var myOptions = {
zoom: 3,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
//,disableDefaultUI: true//Uncoment to disable map controls
};
//Prepare map using de destination id(in the html page) and the options
map = new google.maps.Map(document.getElementById("map_canvas"),myOptions);
//Adding markers(Search marker options for more options)
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:"Zdravo",
icon:"djole.png"//Change the icon of the marker
});
var marker2 = new google.maps.Marker({
position: new google.maps.LatLng(-34.597, 150.744),
map: map,
title:"Zdravo",
icon:"djole.png"//Change the icon of the marker
});
var marker3 = new google.maps.Marker({
position: new google.maps.LatLng(-34.290, 150.444),
map: map,
title:"Zdravo",
icon:"djole.png"//Change the icon of the marker
});
var markers = [];
markers.push(marker);
markers.push(marker2);
markers.push(marker3);
var markerCluster = new MarkerClusterer(map, markers);
}
更新 这是我看到的错误:
答案 0 :(得分:1)
Google API版本3需要MarkerClusterer或MarkerClustererPlus 。您似乎将MarkerClusterer用于Google Maps API版本2.
答案 1 :(得分:0)
首先,我假设您已经加载了所有需要的库(包括用于群集的库),并且您没有得到JS错误。如果不是这样,并且您有疑问,请报告您获得的所有错误以及您加载的库。
尝试提供maxZoom级别:
var markerCluster = new MarkerClusterer(map, markers, { maxZoom: 10 });
然后当您看到地图时,缩小并检查它是否会对标记进行分组。