高德地图获取地理位置经纬度并将经维度转化为详细地址信息
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | <!doctype html> <html> <head> <meta charset= "utf-8" > <meta http-equiv= "X-UA-Compatible" content= "IE=edge" > <meta name= "viewport" content= "initial-scale=1.0, user-scalable=no, width=device-width" > <title>浏览器定位</title> <link rel= "stylesheet" href= "https://cache.amap.com/lbs/static/main1119.css" /> <script type= "text/javascript" src= "http://webapi.amap.com/maps?v=1.4.6&key=8a1b9d2eb62671c0b1b5f06e5effd81b&plugin=AMap.Geocoder" ></script> <script type= "text/javascript" src= "https://cache.amap.com/lbs/static/addToolbar.js" ></script> <body> <div id= 'container' ></div> <div id= "tip" ></div> <div id= "tip" > <b>经纬度 116.396574, 39.992706 的地理编码结果:</b> <span id= "result" ></span> </div> <script type= "text/javascript" > /*************************************** 由于Chrome、IOS10等已不再支持非安全域的浏览器定位请求,为保证定位成功率和精度,请尽快升级您的站点到HTTPS。 ***************************************/ var map, geolocation; //加载地图,调用浏览器定位服务 map = new AMap.Map( 'container' , { resizeEnable: true }); map.plugin( 'AMap.Geolocation' , function () { geolocation = new AMap.Geolocation({ enableHighAccuracy: true , //是否使用高精度定位,默认:true timeout: 10000, //超过10秒后停止定位,默认:无穷大 buttonOffset: new AMap.Pixel(10, 20), //定位按钮与设置的停靠位置的偏移量,默认:Pixel(10, 20) zoomToAccuracy: true , //定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:false buttonPosition: 'RB' }); map.addControl(geolocation); geolocation.getCurrentPosition(); AMap.event.addListener(geolocation, 'complete' , onComplete); //返回定位信息 AMap.event.addListener(geolocation, 'error' , onError); //返回定位出错信息 }); //解析定位结果 function onComplete(data) { var str=[ '定位成功' ]; str.push( '经度:' + data.position.getLng()); str.push( '纬度:' + data.position.getLat()); lnglatXY = [data.position.getLng(),data.position.getLat()]; //已知点坐标 regeocoder(lnglatXY); if (data.accuracy){ str.push( '精度:' + data.accuracy + ' 米' ); } //如为IP精确定位结果则没有精度信息 str.push( '是否经过偏移:' + (data.isConverted ? '是' : '否' )); document.getElementById( 'tip' ).innerHTML = str.join( '<br>' ); } //解析定位错误信息 function onError(data) { document.getElementById( 'tip' ).innerHTML = '定位失败' ; } function regeocoder(loc) { //逆地理编码 var geocoder = new AMap.Geocoder({ radius: 1000, extensions: "all" }); geocoder.getAddress(loc, function (status, result) { if (status === 'complete' && result.info === 'OK' ) { console.dir(result); geocoder_CallBack(result); } }); var marker = new AMap.Marker({ //加点 map: map, position: loc }); map.setFitView(); } function geocoder_CallBack(data) { var address = data.regeocode.formattedAddress; //返回地址描述 document.getElementById( "result" ).innerHTML = address; } </script> </body> </html> |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具