Bir Google Sürüm 3 Geocoder yaptım, sürüklendiğinde veya tıklandığında işaretçinin koordinatlarını alabilmek istiyorum. Aşağıda benim kod:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Google Maps JavaScript API v3 Example: Geocoding Simple</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script src="http://maps.google.com/maps/api/js?v=3.5&sensor=false"></script>
<script type="text/javascript">
var geocoder;
var map;
function initialize() {
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(-34.397, 150.644);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
function codeAddress() {
var address = document.getElementById("address").value;
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
draggable: true,
position: results[0].geometry.location
});
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
</script>
<style type="text/css">
#controls {
position: absolute;
bottom: 1em;
left: 100px;
width: 400px;
z-index: 20000;
padding: 0 0.5em 0.5em 0.5em;
}
html, body, #map_canvas {
margin: 0;
width: 100%;
height: 100%;
}
</style>
</head>
<body onload="initialize()">
<div id="controls">
<input id="address" type="textbox" value="Sydney, NSW">
<input type="button" value="Geocode" onclick="codeAddress()">
</div>
<div id="map_canvas"></div>
</body>
</html>
Bunu yapmak için aşağıdaki kodu kullanmaya çalıştım ama işe yaramıyor gibi görünüyor.
// Javascript//
google.maps.event.addListener(marker, 'dragend', function(evt){
document.getElementById('current').innerHTML = '<p>Marker dropped: Current Lat: ' + evt.latLng.lat().toFixed(3) + ' Current Lng: ' + evt.latLng.lng().toFixed(3) + '</p>';
});
google.maps.event.addListener(marker, 'dragstart', function(evt){
document.getElementById('current').innerHTML = '<p>Currently dragging marker...</p>';
});
map.setCenter(marker.position);
marker.setMap(map);
//HTML//
<div id='map_canvas'></div>
<div id="current">Nothing yet...</div>
Hey @Roy I, bir adres girmek istiyorum sonra bir pop-up koordinatları almak istiyorum, Benim örneğim gibi. Örneğimde, metin girişi yoluyla bir adrese gidip noktayı sürükleyebilirsiniz, noktayı sürüklediğimde açılan koordinatları istiyorum. Aşağıdaki örnek iyi ama bir adres girmek istiyorum? Lütfen bana yardım eder misin?
—
Blake Loizides
Mapperz örneği oldukça iyi görünüyor. GM API bir süredir kullanmadıysanız, StackOverflow üzerinde daha hızlı bir cevap alabilirsiniz.
—
Roy
Ayrıntılı bir blog: goo.gl/pDD6Q8
—
Suresh Kamrushi
evt.latLng
koordinatları yakalamak için kullanabilirsiniz