Google会映射事件以添加标记

时间:2013-10-07 06:49:05

标签: google-maps angularjs google-maps-api-3 google-maps-markers markerclusterer

我使用AngularGM库https://github.com/dylanfprice/angular-gm作为我的项目。它提供谷歌地图和标记的指令。但是,此库中不支持markerclusterer。因此,我需要在我的代码中添加地图和标记实例来添加支持。地图实例可通过服务获得,但标记不是。该库提供谷歌地图事件的包装,并通过回调传递标记实例。所以我需要知道当标记添加到谷歌地图时是否有任何事件被触发。

2 个答案:

答案 0 :(得分:0)

<script>
        var map;
        function initialize() {
            var mapOptions = {
                zoom: 10,
                center: new google.maps.LatLng((SOME LATITUDE), (SOME LONGITUDE))
            };
            var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
            var marker = new google.maps.Marker({
                map: map,
                position: map.getCenter()
            });
            var infowindow = new google.maps.InfoWindow();
            infowindow.setContent('<div id="infoWindow"><b>INFO TEXT</b> <br /> MORE INFO TEXT</div>');
            infowindow.open(map, marker);
            google.maps.event.addListener(marker, 'click', function () {
                infowindow.open(map, marker);
            });
        }
        google.maps.event.addDomListener(window, 'load', initialize);
</script>

答案 1 :(得分:0)

为什么不使用markerClusterer plug-in并使用map和markers作为参数实例化markerClusterer对象?看起来这是聚类标记最简单的方法。但是既然你在问题中标记了角度,我假设你在你的项目中使用角度;所以我不确定你是否可以使用jQuery引用markerClusterer的方式。但我相信你可以通过Google map api

来使用这个插件