var markerClusterer = null; var map = null; var imageUrl = 'http://chart.apis.google.com/chart?cht=mm&chs=24x32&' + 'chco=FFFFFF,008CFF,000000&ext=.png'; var mcOptions = {gridSize: 40, maxZoom: 15}; function refreshMap() { if (markerClusterer) { markerClusterer.clearMarkers(); } var markers = []; var markerImage = new google.maps.MarkerImage(imageUrl, new google.maps.Size(24, 32)); for (var i = 0; i < data.photos.length; ++i) { var latLng = new google.maps.LatLng(data.photos[i].latitude, data.photos[i].longitude); var marker = new google.maps.Marker({ position: latLng, draggable: true, icon: markerImage }); markers.push(marker); } markerClusterer = new MarkerClusterer(map, markers, mcOptions); } function initialize() { map = new google.maps.Map(document.getElementById('map'), { zoom: 2, center: new google.maps.LatLng(39.91, 116.38), mapTypeId: google.maps.MapTypeId.ROADMAP }); refreshMap(); } function clearClusters(e) { e.preventDefault(); e.stopPropagation(); markerClusterer.clearMarkers(); } google.maps.event.addDomListener(window, 'load', initialize());
<div id="map-container"> <div id="map"></div> </div>
#map { width: 100%; height: 400px; }