如何使用JavaScript向用户提示位置共享权限。例如,每当我们访问谷歌地图时,浏览器会自动询问共享位置。我的目标是提示用户共享位置的权限。我正在使用AngularJS中的跟踪模块,但我需要提示用户在Google Chrome中获得许可。 谢谢
答案 0 :(得分:1)
您可以使用这样的功能。调用此函数将引发弹出窗口。
navigator.geolocation.getCurrentPosition(function(position) {
yourFunction(position.coords.latitude, position.coords.longitude);
});
当位置可用时,你的函数将被执行。
答案 1 :(得分:0)
请参阅以下权限:https://developer.mozilla.org/en-US/docs/Web/API/Permissions_API/Using_the_Permissions_API
function handlePermission() {
navigator.permissions.query({name:'geolocation'}).then(function(result) {
if (result.state == 'granted') {
report(result.state);
geoBtn.style.display = 'none';
} else if (result.state == 'prompt') {
report(result.state);
geoBtn.style.display = 'none';
navigator.geolocation.getCurrentPosition(revealPosition,positionDenied,geoSettings);
} else if (result.state == 'denied') {
report(result.state);
geoBtn.style.display = 'inline';
}
result.onchange = function() {
report(result.state);
}
});
}
function report(state) {
console.log('Permission ' + state);
}
handlePermission();