百度地图api

关于百度地图api的应用实例

1.准备工作

​ 1.进入百度地图官网:http://lbsyun.baidu.com/。申请百度地图api使用的秘钥,开源免费的!!!

​ 2.点击控制台

​ 3.点击右侧应用管理–》我的应用

在这里插入图片描述
​ 4.点击创建应用

在这里插入图片描述
​ 5.填写信息完成创建

在这里插入图片描述
6.创建完成后就可以在我的应用中看到创建的应用,并得到秘钥

2.引用地图实例–定位当前位置

<!--这是css样式,根据需要自己改动-->
<style type="text/css">
        #allmap {width: 630px;height: 400px;overflow: hidden;margin:0;font-family:"微软雅黑";}
 </style>
<!--引入百度地图api 秘钥换成自己申请的-->
<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=您的密钥"></script>
<!--在页面你需要的地方定义一个div,空的就可以 id是为了api可以控制到,类似于vue通过id接管区域-->
<div id="allmap"></div>
// 百度地图API功能,获取当前位置
// 注意:谷歌浏览器获取的定位有误差,使用火狐浏览器比较准
<script type="text/javascript">
	// 百度地图API功能
	var map = new BMap.Map("allmap");
	var point = new BMap.Point(116.331398,39.897445);
	map.centerAndZoom(point,12);
	var geoc = new BMap.Geocoder();
	var geolocation = new BMap.Geolocation();
	geolocation.getCurrentPosition(function(r){
		if(this.getStatus() == BMAP_STATUS_SUCCESS){
			var mk = new BMap.Marker(r.point);
			map.addOverlay(mk);
			map.panTo(r.point);
			alert('您的位置:'+r.point.lng+','+r.point.lat)
		}
		else {
			alert('failed'+this.getStatus());
		}        
	},{enableHighAccuracy: true}),
	map.enableScrollWheelZoom(true);
</script>

3.获取拾取点的坐标和位置信息

<script type="text/javascript">
	// 百度地图API功能
	var map = new BMap.Map("allmap");
	var point = new BMap.Point(116.331398,39.897445);
	map.centerAndZoom(point,12);
	var geoc = new BMap.Geocoder();
    
   //通过鼠标在地图上拾取点,并获取经纬度和位置信息
    var mk;
	map.addEventListener("click",function(e){
        //清除地图上的所有标记点
		map.removeOverlay(mk);
		var pt = e.point;
       //获取点击的点
		map.panTo(pt);
		mk = new BMap.Marker(pt);
       //在地图上标记选取的点
		map.addOverlay(mk);
       //标记点信息弹框
		geoc.getLocation(pt, function (rs) {
			var addComp = rs.addressComponents;
            //逆坐标转换,将经纬度转换成可读的位置信息
			bdaddress = addComp.province + addComp.city + addComp.district + addComp.street + addComp.streetNumber;
		  /*  alert(bdaddress);*/
			var opts = {
				width: 270,     // 信息窗口宽度
				height: 70,     // 信息窗口高度
				title: "当前位置:"  // 信息窗口标题
			};
			var infoWindow = new BMap.InfoWindow(addComp.province + addComp.city + addComp.district + addComp.street + addComp.streetNumber, opts);
			map.openInfoWindow(infoWindow, pt); //开启信息窗口
			mk.addEventListener("click", function () {
				map.openInfoWindow(infoWindow, pt);
			});
			bdcoordinate = rs.point.lng+','+rs.point.lat;
			handleData();
		});
	});

	//定位方法
	var geolocation = new BMap.Geolocation();
	geolocation.getCurrentPosition(function(r){
		if(this.getStatus() == BMAP_STATUS_SUCCESS){
			var mk = new BMap.Marker(r.point);
			map.addOverlay(mk);
			map.panTo(r.point);
			alert('您的位置:'+r.point.lng+','+r.point.lat)
		}
		else {
			alert('failed'+this.getStatus());
		}        
	},{enableHighAccuracy: true}),
	map.enableScrollWheelZoom(true);
</script>

(‘failed’+this.getStatus());
}
},{enableHighAccuracy: true}),
map.enableScrollWheelZoom(true);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值