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

  • 相关阅读:
    不装JDK环境运行项目jar包
    java 开发事务回滚
    navicat无法连接MySql; client does not support authentication....
    java url特殊字符报400
    修复windows **.dll缺失
    mysql5.7解压版安装
    IDEA破解
    java 通过request.getParameterMap()获取前台传入参数
    java 实现https请求
    java 实现Http请求
  • 原文地址:https://www.cnblogs.com/xuey/p/10664875.html
Copyright © 2011-2022 走看看