谷歌地图api v3在dragstart时删除标记

时间:2013-04-22 15:16:44

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

我有以下功能。 geolocationService.getNearbyPeoples()是一项服务 从db。

获取数据
function nearbyPeoples(meLat, meLng, map){
    geolocationService.getNearbyPeoples(meLat, meLng).then(function(response){
        for (var i = 0; i < response.data.length; i++) {
            var nearbyLatLng = new google.maps.LatLng(response.data[i].lat, response.data[i].lng);
            var nearbyMarkers = new google.maps.Marker({
                position: nearbyLatLng,
                title: response.data[i].first_name
            }).setMap(map);
        };
    });
}

然后当dragend一个中心标记(meMarker)将调用上面的函数来显示附近的标记

google.maps.event.addListener(meMarker, 'dragend', function() {
            nearbyPeoples(meMarker.position.lat(), meMarker.position.lng(), map);
        });

然后我想删除dragstart中的先前标记。原因是为了防止重复 标记,如果meMarker与同一地点相同。

google.maps.event.addListener(meMarker, 'dragstart', function() {

        });

但我不知道如何删除或提出更好的建议?

1 个答案:

答案 0 :(得分:0)

为什么不在添加标记时保留标记列表(对象)而不是删除标记,而是使用它来避免重复标记?和/或如果必须删除标记,则使用它来删除地图视图边界外的标记。