Как вы видите в следующем коде, маркеры перетаскиваются. В некоторых случаях, если маркер опущен в неправильной области (многоугольник), я хотел бы отменить событие капли, и, следовательно, маркер автоматически возвращается в исходное местоположение.Как отменить операцию перетаскивания маркера google?
function placeMarker(latlng, color, isDraggable) {
var marker = new GMarker(latlng, { icon: getIcon(color), draggable: true });
map.addOverlay(marker);
GEvent.addListener(marker, "dragend", function() {
//redraw polygons again
});
GEvent.addListener(marker, "click", function() {
var latlng = marker.getPoint();
map.openInfoWindowHtml(marker.getPoint(), latlng.y + ", " + latlng.x);
});
return marker;
}
Вопрос заключается в том, как я могу отменить событие перетаскивания маркера, когда он уже упал в dragend
случае?
Почему бы не просто использовать InfoWindow, чтобы показать маркера LAT/LNG, а не сделать маркер перемещаемой на всех? –
Просто объявите их свойство draggable как false и их свойство clickable как true. Они все равно будут слушать клики и события наведения мыши. – amenadiel
@MattBall Мне нужно перетащить. –