আমি একটি গুগল সংস্করণ 3 জিওকোডার তৈরি করেছি, আমি যখন চিহ্নিতকারীটিকে টানা বা ক্লিক করা হয় তখন আমি স্থানাঙ্কগুলি তুলতে সক্ষম হতে চাই। নীচে আমার কোডটি দেওয়া হয়েছে:
<!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>
এটি করার জন্য আমি নীচের কোডটি ব্যবহার করার চেষ্টা করেছি তবে এটি কাজ করে বলে মনে হচ্ছে না।
// 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>
হেই @ রয় আই, আমি একটি ঠিকানা ইনপুট করতে চাইছি তবে আমার উদাহরণের মতো একটি পপআপে স্থানাঙ্কগুলি পান। আমার উদাহরণে আপনি পাঠ্য ইনপুটটির মাধ্যমে কোনও ঠিকানায় যেতে পারেন তারপরে বিন্দুটি টানুন, আমি যখন বিন্দুটি টানব তখন আমি পপআপ স্থানাঙ্ক করতে চাই। নীচের উদাহরণটি ভাল তবে আমি কোনও ঠিকানা ইনপুট করতে চাই? আপনি আমাকে সাহায্য করতে পারেন দয়া করে?
—
ব্লেক লোইজাইড
ম্যাপেরজ উদাহরণটি বেশ ভাল দেখাচ্ছে। আমি কিছুক্ষণের জন্য জিএম এপিআই ব্যবহার করি নি, আপনি স্ট্যাকওভারফ্লোতে আরও দ্রুত উত্তর পেতে পারেন।
—
রায়
একটি বিশদ ব্লগ: goo.gl/pDD6Q8
—
সুরেশ কামরুশি
evt.latLng
স্থানাঙ্কগুলি দখল করতে ব্যবহার করতে পারেন