Google Maps API V3 удаляет маркер - PullRequest
       3

Google Maps API V3 удаляет маркер

0 голосов
/ 10 февраля 2012

Я конвертирую веб-страницу из Google Maps API v2 в 3 в V2. Чтобы удалить маркер, можно сделать следующее:

GEvent.addListener(map, "singlerightclick", function(pixel,tile, marker) {
 if(marker){
  if (confirm("Deselect " + marker.title +" and remove from Map?")){
   map.removeOverlay(marker);
    window.status = "Deselected>" + marker.title + "<" ;}}
  });

Однако теперь я изменил код для добавления маркеров и не могу понять, как выбрать маркер, кликнувший правой кнопкой мыши на маркере, я использую следующий код для добавления маркера

function createRedMarker(Lat,Lang,html,atitle) { 
    var latlng = new google.maps.LatLng(Lat,Lang);
    var marker = new google.maps.Marker({
position: latlng, 
     map: map,
     title: atitle,
     icon:redmarker,
shadow:mshadow
});
google.maps.event.addListener(marker, "click", function() {infowindow.setContent(html); infowindow.open(map,marker);});     
markersArray.push(marker); 
    }

Может ли кто-нибудь дать мне несколько советов о том, как это сделать

1 Ответ

1 голос
/ 10 февраля 2012

Вам нужно добавить еще один прослушиватель событий для щелчка правой кнопкой мыши ниже первого прослушивателя событий.Итак, ваш код будет выглядеть так:

...
google.maps.event.addListener(marker, "click", function() {infowindow.setContent(html); infowindow.open(map,marker);});

google.maps.event.addListener(marker, "rightclick", function() {
if (confirm("Deselect " + marker.title +" and remove from Map?")){
   marker.setMap(null);
    window.status = "Deselected>" + marker.title + "<" ;}}
});
markersArray.push(marker); 
...
...