参考:http://dev.w3.org/geo/api/spec-source.html#permission_denied_error
如何同步检测(并且没有提示请求接受权限的对话框)用户之前是否拒绝访问地理定位数据?
答案 0 :(得分:2)
您无法同步执行检查。如果以前拒绝访问,我建议将值存储到localStorage:
navigator.geolocation.getCurrentPosition(function () {
// success
localStorage.setItem('userDeniedGeo', false);
}, function (err) {
// if permission denied
if (err.code === 1) {
localStorage.setItem('userDeniedGeo', true);
}
});
从那时起,您可以访问localStorage获取答案,而不是使用navigator
,这将通过同步
localStorage.getItem('userDeniedGeo');