Witam,
korzystam z geolokalizacji Google, aby określić współrzędne za pośrednictwem wyłącznie nazwy ulicy,
Kod:
function codeAddress() {
var rozmiar = new google.maps.Size(20,34);
var rozmiar_cien = new google.maps.Size(37,34);
var punkt_startowy = new google.maps.Point(0,0);
var punkt_zaczepienia = new google.maps.Point(10,34);
var ikona_url = new google.maps.Point(15,12);
var ikona_green = new google.maps.MarkerImage("xxxxx/marker.png", rozmiar, punkt_startowy, punkt_zaczepienia);
var ikona_green_shadow = new google.maps.MarkerImage("http://www.google.com/intl/en_ALL/mapfiles/shadow50.png", rozmiar_cien, punkt_startowy, punkt_zaczepienia);
var address = document.getElementById("address").value;
geokoder.geocode( {'address': 'Warszawa, ' + address}, function(results, status) {
var marker;
if (status == google.maps.GeocoderStatus.OK) {
document.mapa.kod.value = results[0].geometry.location;
mapa.setCenter(results[0].geometry.location);
function updateMarkerPosition(latLng) {
$("#kod").val( [
latLng.lat(),
latLng.lng()
].join(', '));
}
if( marker != null ) {
marker.setPosition( results[0].geometry.location );
updateMarkerPosition( results[0].geometry.location );
} else {
marker = new google.maps.Marker({
map: mapa,
icon: ikona_green,
shadow: ikona_green_shadow,
position: results[0].geometry.location,
draggable: true,
zoom: 5
});
updateMarkerPosition(results[0].geometry.location);
google.maps.event.addListener(marker, 'drag', function(local) {
updateMarkerPosition(marker.getPosition());
});
}
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
Do dodania markera na mapie używam przycisku,
<input type="button" value="Sprawdź lokalizację" onclick="codeAddress()"/>
który kieruje się wartością (nazwą ulicy) wpisanej w polu input:
<input type="text" value="Nazwa ulicy" id="address" />
Co mam zrobić, aby po ponownym kliknięciu na przycisk "Sprawdź lokalizację" usuwało poprzedni marker ?
Po wpisaniu innej nazwy ulicy i kliknięciu pokazuje się nowy marker z nową lokalizacją...
Pozdrawiam !
Ten post edytował SpiJay 2.01.2013, 13:58:59