JavaScript调用百度API定位当前位置,显示百度地图,并且在当前位置标注
1 创建定位对象,获得当前位置
var geolocation = new BMap.Geolocation(); //创建定位对象 geolocation.getCurrentPosition(回调方法); //获得当前位置
2 当前位置添加标注
/地图添加标注 //r.point当前位置 var mk = new BMap.Marker(r.point); map.addOverlay(mk);
3 移动地图的中心点到地图中间
var pt = r.point; map.panTo(pt);//移动地图中心点
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="author" content="wanmait"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style type="text/css"> #address{ width:800px; height:600px; } </style> <title>Document</title> <script src="/test/js/jquery-3.6.0.min.js"></script> <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=百度地图AK"></script> </head> <body> <p id="address"></p> <script> var map = new BMap.Map("address");//创建Map var point = new BMap.Point(116.331398,39.897445);//创建定坐标 map.centerAndZoom(point,12); //初始化地图,设置中心点坐标和地图级别 var geolocation = new BMap.Geolocation(); //创建定位对象 // 开启SDK辅助定位 geolocation.enableSDKLocation(); //获得当前位置 geolocation.getCurrentPosition(function(r){ if(this.getStatus() == BMAP_STATUS_SUCCESS){ //地图添加标注 //r.point当前位置 var mk = new BMap.Marker(r.point); map.addOverlay(mk); var pt = r.point; map.panTo(pt);//移动地图中心点 } }); </script> </body> </html>
显示效果:
0条评论
点击登录参与评论