6

我想做的是创建应用程序,当任何人点击地图对象时,每次点击都会填充两个字段的纬度和经度。是否有 Google Maps V3 JavaScript API (Geocoding API) 的示例代码可以做类似的事情?

4

4 回答 4

18

您可以使用google.maps.event 的LatLng 属性实现此目的:

像这样的东西会显示它是如何工作的。这是一个JSFiddle 演示:

google.maps.event.addListener(map, 'click', function(event){
       alert('Lat: ' + event.latLng.lat() + ' Lng: ' + event.latLng.lng());
});

map 是您的谷歌地图对象。是的,我认为该示例在 V2 中,如果您想在点击时创建一个标记,您可以简单地在点击回调函数中创建它。

于 2011-04-06T19:43:13.803 回答
5

这是我使用了很长时间的第 2 版的完整代码,我已在网站上发布。

http://vikku.info/programming/google-maps-v2/get-lattitude-longitude-onmouseover-and-onmouseclick-google-map-v2.htm

只需单击浏览器中的查看源代码并复制保存内容。它会完美地工作。唯一的事情是您需要更改地图 api 密钥。

这是谷歌地图版本 3 的代码

http://vikku.info/programming/google-maps-v3/get-lattitude-longitude-onclick-and-onmouseover-google-map-v3.htm

于 2011-06-30T07:01:45.297 回答
3
函数加载()
{
 var map=new google.maps.Map(document.getElementById('map'), {
中心:新 google.maps.LatLng(37.4419, -122.1419),
缩放:14,
mapTypeId:google.maps.MapTypeId.ROADMAP,
disableDefaultUI:真
});
google.maps.event.addListener(map, 'click', function(event){
       alert('Lat: ' + event.latLng.lat() + ' 经度为: ' + event.latLng.lng());

}

加载代码后,您可以编写此代码来获取固定点的纬度和经度。请试试

于 2011-04-14T12:41:03.510 回答
1
var map = [google map];

google.maps.event.addListener(map, 'click', function (mouseEvent) {
    alert(mouseEvent.latLng.toUrlValue());
});
于 2011-04-06T19:56:30.870 回答