Я бы добавил, добавив событие перетаскивания к маркеру, используя слушателя при его создании.
google.maps.event.addListener(marker, 'dragend', function() {
//do something with the event.
});
вот пример скрипта: http://jsfiddle.net/2YQg6/10/ (Не возражайте против других вещей, которые я простоотредактировал скрипку, которую я использовал ранее для обработки перетаскиваемых маркеров.)
Соответствующий код находится в цикле создания маркера:
//geo code and build markers for each list item.
for (var i = 0; i < $listItems.length; i++) {
geocoder.geocode({
'address': $($listItems[i]).text()
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var marker = new google.maps.Marker({
position: results[0].geometry.location,
map: map,
draggable: true,
originalPos: results[0].geometry.location
});
google.maps.event.addListener(marker, 'dragend', function() {
infoWindow.setContent("marker originally at this position: " + this.originalPos + " was dragged to: " + this.position);
infoWindow.open(map, this);
});
markers.push(marker);
}
});
}