这是我的代码,我是新的谷歌地图和JavaScript,我试图通过传递位置(latlng)到'地名'到geocoder,但它没有返回任何值。如果将placeName var设置为'somePlace',它将标题设置为'somePlace'。但我想用返回值设置标题,例如地名。谷歌地图JavaScript API V3 - 地理编码API不返回地名
function setMap(position){
//var Karachi = {lat: 24.8978176, lng: 66.9596003}; //default city
var location = {
lat: position.coords.latitude,
lng: position.coords.longitude
}
var mapOptions = {
center: location,
zoom: 13, //initial zoom level
mapTypeId: 'hybrid' //map type
}
//object of map
var map = new google.maps.Map(document.getElementById('map'), mapOptions);
var placeName;
//placeName = 'SomePlace';
var newLatLng = location + '';
var latlngStr = newLatLng.split(',',2);
var latlng = {lat: parseFloat(latlngStr[0]), lng: parseFloat(latlngStr[1])};
var geocoder = new google.maps.Geocoder({'location': latlng}, function(results, status) {
if(status === 'OK'){
if(results[1]){
placeName = 'results[1].formatted_address';
}
else{
window.alert('Error in ' + status);
}
}
else{
window.alert('Geocoder failed due to ' + status);
}
});
var markerOptions = {
position: location,
map: map,
title: placeName //<-- i want place name to be here
}
//object of marker
var marker = new google.maps.Marker(markerOptions);
marker.setTitle(placeName); //<-- this is also not working
}
则可以反向地理编码使用地理编码工具的坐标? https://google-developers.appspot.com/maps/documentation/utils/geocoder/ – xomena