h5获取地理坐标

h5获取地理坐标

 方法:h5自带获取地理信息的api

api:navigator.geolocation.getCurrentPosition

  https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/getCurrentPosition

代码:(vue,iview)

getLocation () { // 检测是否支持地理定位 如果支持,则运行 getCurrentPosition() 方法。如果不支持,则向用户显示一段消息。
      if (navigator.geolocation) { // 如果getCurrentPosition()运行成功, //则向参数showPosition中规定的函数返回一个coordinates对象
        navigator.geolocation.getCurrentPosition((position) => {
          this.lon = position.coords.longitude
          this.lat = position.coords.latitude
        }, error => {
          switch (JSON.stringify(error.code)) {
            case 1:
              this.$Message.error('地理位置信息的获取失败,因为该页面没有获取地理位置信息的权限。')
              break
            case 2:
              this.$Message.error('地理位置获取失败,因为至少有一个内部位置源返回一个内部错误。')
              break
            case 3:
              this.$Message.error('获取地理位置的超时时长。')
              break
            default:
              this.$Message.error('地理位置信息的获取失败,因为该页面没有获取地理位置信息的权限。')
          }
        })
      } else {
        this.$Message.error('对不起,您的浏览器不支持地理位置定位')
      }
    }

注释:

经测试大部分浏览器可用,但微信内置浏览器问题会有问题。微信需要使用weixin-js-sdk中的wx.getLocatio()方法。

上述函数在微信内置浏览器中会返回报错:地理位置信息的获取失败,因为该页面没有获取地理位置信息的权限。

 

钻研不易,转载请注明出处......

转载于:https://www.cnblogs.com/s313139232/p/11021665.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值