百度地图API是一套为开发者免费提供的基于 百度地图的应用程序接口,包括JavaScript、iOS、Andriod、静态地图、Web服务等多种版本,提供基本地图、位置搜索、周边搜索等。
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 5 <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no"> 6 <title>我的所在城市的详细地址!</title> 7 <script type="text/javascript" src="/Js/JQuery.js?id=1"></script> 8 </head> 9 <body> 10 <div id="address">地址正在加载中...</div> 11 <script type="text/javascript" src="https://api.map.baidu.com/api?ak=申请百度AK&v=2.0&services=false"></script> 12 <script type="text/javascript"> 13 function GetLocation(){ 14 var geolocation = new BMap.Geolocation(); 15 geolocation.getCurrentPosition(function(r){ 16 if(this.getStatus() == BMAP_STATUS_SUCCESS){ 17 var rp = new BMap.Point(r.point.lng,r.point.lat); 18 var gc = new BMap.Geocoder(); 19 gc.getLocation(rp,function(rs){ 20 var addComp = rs.addressComponents; 21 $("#address").html("我的详细地址:<hr>"+addComp.province + addComp.city + addComp.district + addComp.street + addComp.streetNumber); 22 }); 23 } 24 },{enableHighAccuracy: true}); 25 } 26 GetLocation(); 27 </script> 28 </body> 29 </html>
再此处特别需要注意:
1、services=false,因为你是在客户端执行的,一定要设置false,否则无法正确获取到详细地址。
2、你执行的域名需要去设置Referer白名单
3、应用类型:浏览器端
附:申请百度AK (http://lbsyun.baidu.com/ )
浙公网安备 33010602011771号