// 定位功能(已配置高德Key) function getLocation() { const amapKey = '01adecb512cfa77a88e16ac72744fb91'; if (!amapKey) { alert('请先配置高德地图Key'); return; } // 浏览器定位+逆地理编码逻辑 if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(pos => { const { latitude, longitude } = pos.coords; fetch(`https://restapi.amap.com/v3/geocode/regeo?location=${longitude},${latitude}&key=${amapKey}&extensions=base`) .then(res => res.json()) .then(res => { if (res.status === '1') { const addr = res.regeocode; const comp = addr.addressComponent; // 填充省/市/区/镇 四级区域 document.getElementById('regionText').innerText = `${comp.province}/${comp.city}/${comp.district}/${comp.township}`; // 填充详细地址(街道+门牌号) document.getElementById('address').value = comp.street + comp.streetNumber; } else { alert('地址解析失败:' + res.info); } }) .catch(err => { alert('定位请求失败,请检查网络'); }); }, err => { alert('无法获取定位,请允许浏览器定位权限'); }, { enableHighAccuracy: true, // 开启高精度定位 timeout: 10000 // 超时时间10秒 }); } else { alert('您的浏览器不支持定位功能'); } }