js调用百度地图api获取当前位置

2 篇文章 0 订阅
1 篇文章 0 订阅

js调用百度地图api获取当前位置

百度api接口定位服务

1.引入js

<script src="../。./plugin/zepto.min.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=XZaXhN6i2UB3kgkGgV4ZejC8"></script>

2.html页面代码

<div class="ui-form-item ui-border-b">
	<label> 事发地点: </label>
	<input placeholder="请输入事发地点" id="sfdd" name="sfdd" type="text" style="padding-right: 25px;">
	<a href="javascript:getCurrPosition();" class="ui-icon-pin pull-right"></a>
</div>

2.js方法

function getCurrPosition() {
				//这里提示用到了zepto.min.js
				var loading = $.loading({
					content: '正在获取位置...'
				});
				var geolocation = new BMap.Geolocation();
				geolocation.getCurrentPosition(function(r) {
					loading.hide();
					if (this.getStatus() == BMAP_STATUS_SUCCESS) {
						var geoc = new BMap.Geocoder();
						var pt = r.point;
						geoc.getLocation(pt, function(rs) {
							var addComp = rs.addressComponents;
							//addComp.province 省份
							$("#sfdd").val(addComp.city + addComp.district + addComp.street + addComp.streetNumber);
						});
					} else {
						var msg = '获取位置失败!';
						switch (this.getStatus()) {
							case BMAP_STATUS_UNKNOWN_LOCATION:
								msg += "位置结果未知。";
								break;
							case BMAP_STATUS_SERVICE_UNAVAILABLE:
								msg += "定位服务不可用。";
								break;
							case BMAP_STATUS_TIMEOUT:
								msg += "定位超时";
								break;
						}
						var tip = $.tips({
							content: msg,
							stayTime: 1000,
							type: "success"
						});
					}
				}, {
					enableHighAccuracy: true
				});
			}

4.效果图
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值