在Google Maps API V3中删除标记

时间:2014-08-04 13:05:35

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

在应用程序构建环境中我正在尝试使用此代码:

   var map = new Appery('googlemap').gmap;

var markerLatLng = new google.maps.LatLng(localStorage.getItem("markerLat"), localStorage.getItem("markerLng"));
var Titolo = 'Some Title';

var markers = [];

var marker = new google.maps.Marker({
    position: markerLatLng,
    map: map,
    title: Titolo,
    animation: google.maps.Animation.DROP
});
markers.push(marker);


function setAllMap(map) {
  for (var i = 0; i < markers.length; i++) {
    markers[i].setMap(map);
  }
}




google.maps.event.addListener(marker, 'click', function() {markers.pop();
  map.refresh(); 
                                                          setAllMap(map);
                                                          });

但它不起作用。谁能说我为什么?我只是想通过点击她/她想要的任何标记来删除用户制作的最后一个标记。

谢谢

1 个答案:

答案 0 :(得分:1)

从数组中删除标记对象不会从地图中删除标记。您必须在标记上调用 setMap(null)才能执行此操作。只需在数组上执行 markers [markers.length -1] .setMap(null)然后 pop();