谷歌地图集群-Javascript
我在我的网站上使用谷歌地图,我想通过谷歌聚类来处理地图上的多个标记。我已经阅读了文档并按照步骤进行了操作,但是在向脚本添加新集群时没有加载映射 我是谷歌地图API的新手,我想在我的网站上添加聚类功能。谢谢你的帮助谷歌地图集群-Javascript,javascript,google-maps,Javascript,Google Maps,我在我的网站上使用谷歌地图,我想通过谷歌聚类来处理地图上的多个标记。我已经阅读了文档并按照步骤进行了操作,但是在向脚本添加新集群时没有加载映射 我是谷歌地图API的新手,我想在我的网站上添加聚类功能。谢谢你的帮助 function initMainMap() { var map; var bounds = new google.maps.LatLngBounds(); var mapOptions = { zoom:
function initMainMap() {
var map;
var bounds = new google.maps.LatLngBounds();
var mapOptions = {
zoom:5,
scrollwheel: false,
mapTypeId:google.maps.MapTypeId.ROADMAP
};
// Display a map on the page
map = new google.maps.Map(document.getElementById("main-map"), mapOptions);
map.setTilt(45);
// Multiple Markers
var markers = [
['Test, Test', 33.890396,35.506160],
['Test, Test', 33.880007,35.514207],
['Test, Test', 33.880007,35.518207],
['Berytech Al Mathaf, Beirut', 33.880307,35.514507],
['Berytech Al Mathaf, Beirut', 33.880407,35.516607]
];
// Info Window Content
var infoWindowContent = [
['<div class="info_content">' +
'<h3>Test</h3>' +
'<p>Test</p>' + '</div>'],
['<div class="info_content">' +
'<h3>Test</h3>' +
'<p>Test</p>' +
'</div>']
];
// Display multiple markers on a map
var infoWindow = new google.maps.InfoWindow(), marker, i;
// Loop through our array of markers & place each one on the map
for( i = 0; i < markers.length; i++ ) {
var position = new google.maps.LatLng(markers[i][1], markers[i][2]);
bounds.extend(position);
marker = new google.maps.Marker({
position: position,
map: map,
title: markers[i][0]
});
// Allow each marker to have an info window
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function() {
infoWindow.setContent(infoWindowContent[i][0]);
infoWindow.open(map, marker);
}
})(marker, i));
// Automatically center the map fitting all markers on the screen
map.fitBounds(bounds);
}
// Call the resize function for a responsive container
google.maps.event.addDomListener(window, "resize", function() {
var center = map.getCenter();
google.maps.event.trigger(map, "resize");
map.setCenter(center);
});
// Override our map zoom level once our fitBounds function runs (Make sure it only runs once)
var boundsListener = google.maps.event.addListener((map), 'bounds_changed', function(event) {
this.setZoom(14);
google.maps.event.removeListener(boundsListener);
});
}
函数initMainMap(){
var映射;
var bounds=new google.maps.LatLngBounds();
变量映射选项={
缩放:5,
滚轮:错误,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
//在页面上显示地图
map=new google.maps.map(document.getElementById(“主地图”),mapOptions);
地图.设置倾斜(45);
//多重标记
变量标记=[
[Test,Test',33.890396,35.506160],
[Test,Test',33.880007,35.514207],
[Test,Test',33.880007,35.518207],
['Berytech Al-Mathaf,贝鲁特',33.880307,35.514507],
['Berytech Al-Mathaf,贝鲁特',33.880407,35.516607]
];
//信息窗口内容
var infoWindowContent=[
['' +
“测试”+
“测试”“+”,
['' +
“测试”+
“测试”+
'']
];
//在地图上显示多个标记
var infoWindow=new google.maps.infoWindow(),marker,i;
//在我们的标记阵列中循环并将每个标记放置在地图上
对于(i=0;i
只需在代码中添加一个标记,并在其中添加标记即可
// before the loop
var markerClusterer = new MarkerClusterer(map, [], {imagePath: "http://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/images/m"});
// inside the loop
markerClusterer.addMarker(marker);
代码片段:
函数initMainMap(){
var bounds=new google.maps.LatLngBounds();
变量映射选项={
缩放:5,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
//在页面上显示地图
var map=new google.maps.map(document.getElementById(“主地图”),mapOptions);
var infoWindow=new google.maps.infoWindow(),
马克,我;
var markerClusterer=新的markerClusterer(映射,[]{
图像路径:“http://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/images/m"
});
//在我们的标记阵列中循环并将每个标记放置在地图上
对于(i=0;i”+
''
],
['' +
“测试2”+
“测试”+
''
],
['' +
“测试3”+
“测试”+
''
],
['' +
“测试4”+
“测试”+
''
]
];
//在地图上显示多个标记
html,
身体,
#主地图{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}
浏览器开发人员工具控制台中是否有任何错误?没有所有功能都正常工作,除了没有映射之外?代码中没有MarkerClusterer。你尝试了什么不起作用?有地图..这是没有群集的地图的代码操作系统,它起作用了,但我需要添加群集谢谢…它起作用了..只是想问一下,当宽度改变时,我是否希望地图响应并保持居中,我该怎么办?