如何通过Google Maps API检索纬度和经度?
答案 0 :(得分:22)
使用API v3
google.maps.event.addListener(map, 'click', function(event) {
alert( 'Lat: ' + event.latLng.lat() + ' and Longitude is: ' + event.latLng.lng() );
});
同样,您可以在拖动标记时检索:
google.maps.event.addListener(marker, 'dragstart', function(event) {
alert( 'Lat: ' + event.latLng.lat() + ' and Longitude is: ' + event.latLng.lng() );
});
答案 1 :(得分:13)
如果您需要使用Google Maps API查找地址的纬度和经度,则需要使用Google Maps Geocoding Service:
var map = new GMap2(document.getElementById("map_canvas"));
var geocoder = new GClientGeocoder();
var address = "1600 Amphitheatre Parkway, Mountain View";
geocoder.getLatLng(address, function(point) {
var latitude = point.y;
var longitude = point.x;
// do something with the lat lng
});
如果您希望获得点击Google地图上某个位置的纬度和经度,可以在点击事件中执行此操作:
GEvent.addListener(map, "click", function(marker,point) {
var latitude = point.y;
var longitude = point.x;
// do something with the lat/lng
});
答案 2 :(得分:4)
我通过以下方法找到了结果:
http://maps.googleapis.com/maps/api/geocode/json?address=woking&sensor=false
console.log(response.results[0].geometry.viewport.northeast.lat);
console.log(response.results[0].geometry.viewport.northeast.lng);
答案 3 :(得分:1)
这里有更多信息 https://developers.google.com/maps/documentation/geocoding/
答案 4 :(得分:0)
答案 5 :(得分:0)
我不确定您是否要求通过代码获取纬度和经度的方法(尽管您说的是API :)), 如果你那时有一百万个帖子会告诉你如何(包括上面的那些),但如果你对某个实用工具感兴趣,它只是告诉你你在哪里点击,那么谷歌地图已经附带了它。 查看他的帖子,了解如何启用该功能。
http://varunpant.com/posts/find-longitude-and-latitude-in-google-maps
答案 6 :(得分:0)
要添加到RedBlueThing的答案,您可以执行以下操作:
geocoded_by :address
def address
[street, city, state, country].compact.join(', ')
end
帮助您缩小确切的位置,否则,如果您只是在街上发送地理编码器宝石只返回它找到的可能在世界任何地方的那条街道的第一个实例
答案 7 :(得分:0)
怎么样? 工作正常......
var map = new google.maps.Map(....);
var longitude = map.center.lng();
var latitude = map.center.lat();
或
var longitude = map.getCenter().lng();
var latitude = map.getCenter().lat();