Попробуйте что-то подобное, используя JavaScript и API Google Maps:
// update element with latest lat and lon
function updateMarkerPosition(latLng) {
document.getElementById('ll').value = [
latLng.lat(),
latLng.lng()
].join(', ');
}
function initialize() {
// look for any lat lon in url, to set map center
if ($.urlParam('ll')) {
var llparam = $.urlParam('ll').split(', ');
var lat = parseFloat(llparam[0]);
var lon = parseFloat(llparam[1]);
var latLng = new google.maps.LatLng(lat, lon);
} else {
var latLng = new google.maps.LatLng(47.65130629733119, -122.34994607543945);
}
var map = new google.maps.Map(document.getElementById('mapCanvas'), {
zoom: 12,
center: latLng,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker = new google.maps.Marker({
position: latLng,
map: map,
draggable: true
});
// Update current position info.
updateMarkerPosition(latLng);
// Add dragging event listeners.
google.maps.event.addListener(marker, 'drag', function() {
updateMarkerPosition(marker.getPosition());
});
}