zoukankan      html  css  js  c++  java
  • js 移动端获取当前用户的经纬度

    一、HTML5 geolocation的属性

    if(navigator.geolocation){
      navigator.geolocation.getCurrentPosition(onSuccess , onError);
    }else{
      alert("您的浏览器不支持使用HTML 5来获取地理位置服务");
    }
    //定位数据获取成功响应
    function  onSuccess(position){
          alert('纬度: '          + position.coords.latitude          + '
    ' +
          '经度: '         + position.coords.longitude         + '
    ' +
          '海拔: '          + position.coords.altitude          + '
    ' +
          '水平精度: '          + position.coords.accuracy          + '
    ' +
          '垂直精度: ' + position.coords.altitudeAccura)
    }
    //定位数据获取失败响应
    function onError(error) {
      switch(error.code)
      {
        case error.PERMISSION_DENIED:
        alert("您拒绝对获取地理位置的请求");
        break;
        case error.POSITION_UNAVAILABLE:
        alert("位置信息是不可用的");
        break;
        case error.TIMEOUT:
        alert("请求您的地理位置超时");
        break;
        case error.UNKNOWN_ERROR:
        alert("未知错误");
        break;
      }
    }

    二、百度地图api定位

     <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=xxxxxxxxxx"></script>
     <script type="text/javascript" src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>
     <script>
        window.BMap = BMap;
        let BMap = window.BMap
        let geolocation = new BMap.Geolocation()
    
        geolocation.enableSDKLocation(); //允许SDK辅助
        geolocation.getCurrentPosition(function (r)
       {
            if(this.getStatus() == 0){
            console.log(r)
           }
      })
     </script>        

     相关文章:HTML5获取地理经纬度并通过百度接口得到实时位置

       百度地图api

       百度地图鹰眼记录轨迹

    三 、腾讯地图api定位

    <iframe id="geoPage" width=0 height=0 frameborder=0  style="display:none;" scrolling="no"
        src="https://apis.map.qq.com/tools/geolocation?key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77&referer=myapp">
    </iframe>
    window.addEventListener('message', function(event) {
        // 接收位置信息
        var loc = event.data;
        console.log('location', loc);
    }, false)       ;
    setTimeout(function() {
        if (!_this.loc) {
           console.log('定位超时')
        }
    }, 6000) // 6s为推荐值,业务调用方可根据自己的需求设置改时间,不建议太短

     腾讯地图组件API

     腾讯JavaScript API

  • 相关阅读:
    js获取粘贴内容
    axios导出 exer
    Mac + IDEA + JRebel破解方法.
    富有魅力的git stash
    java web 下实现文件下载
    java23中设计模式
    高并发量网站解决方案
    Linux下拆分大文件
    Linux下jvm、tomcat、mysql、log4j优化配置
    cas单点登出
  • 原文地址:https://www.cnblogs.com/xuey/p/10664875.html
Copyright © 2011-2022 走看看