我正在使用谷歌地图API。 我成功地用html显示谷歌地图。
现在,我想让用户选择位置并获取纬度/经度数据。
这是我想要的步骤。
总的来说。
如何实现“让用户在谷歌地图上选择一个地方并获取地理信息”的目的
现在我的代码如下所示,只需在HTML上显示地图
function mapInit() {
var centerPosition = new google.maps.LatLng(35.656956, 139.695518);
var option = {
zoom : 18,
center : centerPosition,
mapTypeId : google.maps.MapTypeId.ROADMAP
};
var googlemap = new google.maps.Map(document.getElementById("mapField"), option);
}
mapInit();
in html
<div id="mapField" style="width:350px;height:350px;"></div>
答案 0 :(得分:2)
请参阅此Google地图文档示例:https://developers.google.com/maps/documentation/javascript/elevation。原则上,这正是您正在寻找的。它可以简化到适合您的目的。您只需要在googlemap
语句后添加:
var marker = new google.maps.Marker({position:centerPosition, icon:icon_path}); //choose the path for the icon yourself
google.maps.event.addListener(googlemap, 'click', function(event){
//do whatever you want with this variable of the string of the clicked location:
event.latLng.toString();
marker.setPosition(event.latLng);
}
这样做是从google.maps库中声明一个新的事件监听器,将其分配给地图googlemap
,将其类型声明为'click'
(当用户点击时触发)和final函数是一个回调函数,它从click事件中获取其参数。 event
参数有一个名为latLng
的属性,它是google.maps.LatLng
库的一个实例。同时,创建标记,每次用户点击时其位置都会改变。请参阅标记文档(https://developers.google.com/maps/documentation/javascript/reference#Marker)和一些使用教程(https://developers.google.com/maps/documentation/javascript/markers)。
我希望这会有所帮助