📅  最后修改于: 2023-12-03 14:57:46.079000             🧑  作者: Mango
在地图应用中,经纬度数据是非常重要的一部分。然而,在现实中并不是所有地点都有经纬度数据,这时候如果需要手动去查找每个地点的经纬度信息将是一项非常耗时的任务。
针对这种情况,谷歌提供了一个自动填充空纬度的功能,它可以帮助我们在没有经纬度数据的情况下,快速地获取到地点的经纬度信息。
该功能需要先引入谷歌地图 API,然后通过以下代码来实现:
function getLocation() {
var address = document.getElementById("address").value; // 获取地址
// 创建 Geocoder 对象
var geocoder = new google.maps.Geocoder();
// 调用 geocode 函数,传入参数 address 和一个回调函数
geocoder.geocode({address: address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
// 获取经纬度信息
var lat = results[0].geometry.location.lat();
var lng = results[0].geometry.location.lng();
// 在页面上展示经纬度信息
document.getElementById("latitude").value = lat;
document.getElementById("longitude").value = lng;
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
}
代码中,getLocation
函数首先获取到页面上输入框中的地址信息,然后创建了一个 Geocoder
对象,并通过 geocode
函数获取到地点的经纬度信息。如果 geocode
函数执行成功,就会通过回调函数将经纬度信息展示在页面上。
geocode
函数可能会返回错误信息,需要做好错误处理;geocode
函数时,可以传入更多参数来限制查询范围和提高查询精度。以上就是谷歌放置自动填充空纬度的 Javascript 实现方法。如果您在使用过程中遇到了问题,可以查看谷歌地图 API 的官方文档或者在开发者社区寻求帮助。