Web端实现定位(使用腾讯地图实现)

1、腾讯地图提供定位服务的API,官方网址:

点击打开链接

2、从腾讯地图API官网注册一个开发秘钥



3、根据官方文档引入js文件

 <script type="text/javascript" src="https://3gimg.qq.com/lightmap/components/geolocation/geolocation.min.js"></script>

4、定位代码

<script type="text/JavaScript">
    var geolocation = new qq.maps.Geolocation("OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77", "myapp"); 
    var positionNum = 0;
    var options = {timeout: 8000};

    function showPosition(position) {
        var adCode = position.adCode;//邮政编码
        var nation = position.nation;//中国
        var city = position.city; //城市
        var addr = position.addr; //详细地址
        var lat = position.lat; //
        var lng = position.lng; //火星坐标 //TODO 实现业务代码逻辑 
     }; 
    function showErr() { 
        //TODO 如果出错了调用此方法 
    }; 
</script>

$(function(){ //定位
       geolocation.getLocation(showPosition, showErr, options);
})

    返回结果说明:

1
2
3
4
5
6
7
8
9
10
11
{   "module" : "geolocation" ,
     "nation" : "中国" ,
     "province" : "广州省" ,
     "city" : "深圳市" ,
     "district" : "南山区" ,
     "adcode" : "440305" , //行政区ID,六位数字, 前两位是省,中间是市,后面两位是区,比如深圳市ID为440300
     "addr" : "深圳大学杜鹃山(白石路北250米)" ,
     "lat" :22.530001, //火星坐标(gcj02),腾讯、Google、高德通用
     "lng" :113.935364,
     "accuracy" :13 //误差范围,以米为单位
}

    函数说明:

构造函数说明
qq.maps.Geolocation(key, referer)参数: key : 必填,开发密钥(key),申请地址 http://lbs.qq.com/console/mykey.html referer: 必填,调用来源,一般为您的应用名称,为了保障对您的服务,请务必填写!例如: referer=mapqq

5、总结

  按照官方文档操作可实现定位,这只是按照官方文档的调用方式一实现的,如果需要别的实现方式,可详细阅读官方文档。

  • 6
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
使用腾讯地图获取地理位置,可以按照以下步骤进行: 1. 在腾讯地图开放平台申请一个开发者账号,并创建一个应用,获取开发者密钥(key)。 2. 在你的HTML文件引入腾讯地图的API: ``` <script src="https://map.qq.com/api/js?v=2.exp&key=你的开发者密钥"></script> ``` 3. 在HTML页面创建一个容器,用于显示地图: ``` <div id="map" style="width: 100%; height: 500px;"></div> ``` 4. 使用JavaScript代码初始化地图,并获取当前位置: ``` var map = new qq.maps.Map(document.getElementById("map"), { center: new qq.maps.LatLng(39.916527,116.397128), zoom: 13 }); var geolocation = new qq.maps.Geolocation(map, "你的应用名称"); qq.maps.event.addListener(geolocation, "complete", function(result){ var location = result.detail.location; console.log(location); }); qq.maps.event.addListener(geolocation, "error", function(error){ console.log(error); }); geolocation.getLocation(); ``` 在上面的代码,我们首先创建了一个地图实例,并将其显示在页面上。然后,我们创建了一个`qq.maps.Geolocation`实例,用于获取地理位置。在`"complete"`事件,我们可以获取到当前位置的经纬度信息,并在控制台打印出来。在`"error"`事件,我们可以处理定位失败的情况。最后,我们调用`getLocation()`方法触发定位操作。 需要注意的是,腾讯地图API需要在HTTPS协议下使用,因此你的网站必须启用HTTPS才能使用腾讯地图API。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值