如果地理定位被拒绝,我需要 JavaScript 来显示手动输入。
我尝试过的:
Modernizr.geolocation
navigator.geolocation
两者均未说明用户之前是否拒绝访问地理定位。
最佳答案
watchPosition
和 getCurrentPosition
都接受第二个回调,该回调在出现错误时调用。错误回调为错误对象提供参数。对于被拒绝的权限,error.code
将是 error.PERMISSION_DENIED
(数值 1
)。
在这里阅读更多:https://developer.mozilla.org/en/Using_geolocation
示例:
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 等中按预期工作。
关于javascript - 有没有办法检查地理定位是否已被 Javascript 拒绝?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6092400/