如何通过Google Maps API获取纬度和经度?

18

如何通过Google Maps API获取经纬度?


8
请详细说明你想要做什么。 - Amber
8个回答

24

使用 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() );
});

4
注意:由于我的编辑被拒绝,这里缺少需要添加的括号和分号才能使其工作。另外,建议将“dragstart”更改为“dragend”,这样您将在放置标记后(而不是在拿起标记时)收到提示。 - Wesley Baugh

14

如果您需要使用Google Maps API查找地址的纬度和经度,则需要使用Google Maps地理编码服务

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 地图上点击的位置的纬度和经度,可以在 click 事件中执行以下操作:

GEvent.addListener(map, "click", function(marker,point) {
        var latitude = point.y;
        var longitude = point.x;

        // do something with the lat/lng
    });

谢谢!我该如何在我的HTML或JSP页面上获取GEvent?我需要包含任何JS吗?我正在使用http://code.google.com/p/struts2-map-plugin/wiki/MapTag,但这没有地图功能的标签,因此正在寻找您在此处显示的第二个示例中的内容。 - Amol Ghotankar
@AmolGhotankar 先生,我已经尝试运行这段代码,但它在我的电脑上无法运行。即使我尝试了所有可能的答案,代码仍然无法正常工作。如果您知道任何有关此问题的信息,请告诉我...当我在地图上单击任何点时,我需要获取该点的纬度和经度。 - C Sharper

4


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();

0

除了RedBlueThing的回答,你还可以做一些类似的事情:

geocoded_by :address

def address
 [street, city, state, country].compact.join(', ')
end

为了帮助您缩小确切位置的范围,否则如果您只发送街道信息,地理编码宝石只会返回它找到的该街道的第一个实例,这可能是世界上任何地方。


0

我不确定您是否正在请求通过代码获取纬度和经度的方法(尽管您说了API :)), 如果是这样,那么有数百万篇文章可以向您展示如何实现此功能(包括上面提到的文章),但如果您只是想要一种工具,告诉您单击的位置在哪里,那么Google地图已经内置了此功能。 请查看此处的帖子以了解如何启用该功能。

http://varunpant.com/posts/find-longitude-and-latitude-in-google-maps


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接