如果未授予/拒绝访问,则 navigator.geolocation.getCurrentPosition 超时

Posted

技术标签:

【中文标题】如果未授予/拒绝访问,则 navigator.geolocation.getCurrentPosition 超时【英文标题】:navigator.geolocation.getCurrentPosition timeout if not granted /denied access 【发布时间】:2014-05-07 10:57:08 【问题描述】:

我有一个问题,我找不到解决办法。基本上,当使用谷歌地图时,成功回调不会加载,直到用户点击允许或拒绝(这将触发错误回调)。因此,只要请求访问的弹出窗口仍然被忽略,屏幕上就不会显示任何内容。

有没有办法说如果10秒后没有点击“允许”或“拒绝”然后调用错误回调?

【问题讨论】:

查看您的一些有问题的代码可能会有所帮助,因此我们可以更好地了解您在做什么 这是这里描述的基本设置:developer.mozilla.org/en-US/docs/Web/API/… 【参考方案1】:

我刚刚使用了一个 setTimeout 函数,它在 X 秒后调用了 handleNoGeolocation 函数。如果用户随后单击“允许”,则会执行成功函数。

这是我的代码:

if(navigator.geolocation) 
          var timeout = setTimeout(function()
            handleNoGeolocation();
          , 3000);
          navigator.geolocation.getCurrentPosition(function(position) 
            clearTimeout(timeout);
            initialLocation = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
            map.setCenter(initialLocation);
            doDirections();
          , handleNoGeolocation, timeout: 10000, enableHighAccuracy: true);
     

【讨论】:

以上是关于如果未授予/拒绝访问,则 navigator.geolocation.getCurrentPosition 超时的主要内容,如果未能解决你的问题,请参考以下文章

Swift - 如果未授予核心位置请求权限

尝试授予权限时拒绝用户“root”@“localhost”的访问。如何授予权限?

存储访问框架 - 权限被拒绝问题,即使授予权限

MySQL授予权限访问拒绝

JDBC连接:即使所有Previlleges都被授予,用户也被拒绝访问[关闭]

sql server: 数据库备份时出现-operating-system-error-5拒绝访问