高德地图定位API示例
本示例演示如何使用高德地图 API 实现定位功能。首先,需要引入高德地图的 JavaScript API 文件:
<script src="https://webapi.amap.com/maps?v=1.4.15&key=您的高德API密钥"></script>
通过以下 HTML 代码创建一个用于显示定位信息的 div:
<div id="locationInfo"></div>
在 JavaScript 中编写如下代码:
// 初始化地图和定位插件
var map = new AMap.Map('locationInfo');
var geolocation = new AMap.Geolocation({
enableHighAccuracy: true, // 是否使用高精度定位,默认:true;
timeout: 10000, // 等待定位的最长时间(毫秒)
maximumAge: 0, // 距离上次定位的时间间隔(毫秒),设置为0表示一直获取位置信息
convert: true, // 自动根据定位结果转换坐标系,默认:true;
showButton: true, // 是否显示定位按钮,默认:true;
buttonPosition: 'LB', // 定位按钮停靠位置,默认:'LB',左下角;'RT'右下角;'LB'左下角;'LT'左上角;'RT'右上角。
buttonOffset: new AMap.Pixel(10, 20), // 定位按钮与设置的停靠位置的偏移量,像素单位。
zIndex: null // 不指定定位层叠顺序,也不指定居中方式。使用设置过的值会覆盖原值。如果未设置过该参数,则继承高德地图的默认值,即9998。
});
map.addControl(geolocation); // 将定位插件添加到地图中
map.setZoom(13); // 地图级别调至13级以获取更精确的定位结果
// 根据定位结果更新位置信息
geolocation.getCurrentPosition((status, result) => {
if (status === 'complete') {
// 如果定位成功,将返回经度、纬度以及精度信息
var latitude = result.position.getLat();
var longitude = result.position.getLng();
var accuracy = result.accuracy;
console.log('定位成功:' + longitude + ',t' + latitude + ',t' + accuracy); // 在控制台输出定位结果
} else {
// 如果定位失败,将返回错误信息
console.log('定位失败');
}
});
以上代码实现了使用高德地图 API 实现定位功能的功能需求。
