谷歌地图集群-Javascript

谷歌地图集群-Javascript,javascript,google-maps,Javascript,Google Maps,我在我的网站上使用谷歌地图,我想通过谷歌聚类来处理地图上的多个标记。我已经阅读了文档并按照步骤进行了操作,但是在向脚本添加新集群时没有加载映射 我是谷歌地图API的新手,我想在我的网站上添加聚类功能。谢谢你的帮助 function initMainMap() { var map; var bounds = new google.maps.LatLngBounds(); var mapOptions = { zoom:

我在我的网站上使用谷歌地图,我想通过谷歌聚类来处理地图上的多个标记。我已经阅读了文档并按照步骤进行了操作,但是在向脚本添加新集群时没有加载映射

我是谷歌地图API的新手,我想在我的网站上添加聚类功能。谢谢你的帮助

   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。你尝试了什么不起作用?有地图..这是没有群集的地图的代码操作系统,它起作用了,但我需要添加群集谢谢…它起作用了..只是想问一下,当宽度改变时,我是否希望地图响应并保持居中,我该怎么办?