小编典典

有没有一种方法可以检查地理定位是否已被Javascript拒绝?

javascript

如果地理位置下降,我需要JavaScript显示手动输入。

我尝试过的

Modernizr.geolocation
navigator.geolocation

两者均未描述用户以前是否拒绝访问地理位置。


阅读 289

收藏
2020-05-01

共1个答案

小编典典

watchPositiongetCurrentPosition两个接受时出现错误时被调用的第二回调。错误回调为错误对象提供了一个参数。对于拒绝的权限,error.code将为error.PERMISSION_DENIED(数值1)。

例:

navigator.geolocation.watchPosition(function(position) {

    console.log("i'm tracking you!");

  },

  function(error) {

    if (error.code == error.PERMISSION_DENIED)

      console.log("you denied me :-(");

  });

编辑:正如@Ian Devlin指出的那样,Firefox(本文发布时为4.0.1)似乎不支持此行为。它将按预期在Chrome和 可能
Safari浏览器等。

2020-05-01