In Geolocation API? No.
Se l'utente fa clic negano il permesso significa semplicemente "No, e non mi preoccupa ancora una volta ..."
Tuttavia utente può farlo cancellando Posizione-Share-impostazioni, poi, naturalmente, il prompt si apre di nuovo.
Oppure l'utente può semplicemente modificare le impostazioni se il browser lo consente, ad es. Chrome gestisce queste impostazioni come eccezioni (indipendentemente dal fatto che l'utente abbia autorizzato o negato il permesso), quindi l'utente deve eliminare le impostazioni, risp. eccezione comunque.
Che ora?
L'unica opzione è di rilevare l'errore e utilizzare ad es. alcune API esterne per trovare la posizione dell'utente tramite IP. Puoi programmarlo da solo o ci sono naturalmente soluzioni esistenti come suggerito da @Venkat.
Ma sappiate che la geolocalizzazione IP è complicata - a volte ha un'accuratezza del numero di indirizzi a volte è solo la precisione dello stato.
Questo examle from Mozilla's docs mostra un buon esempio come gestire gli errori Geolocalizzazione:
var options = {
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0
};
function success(pos) {
var crd = pos.coords;
console.log('Your current position is:');
console.log('Latitude : ' + crd.latitude);
console.log('Longitude: ' + crd.longitude);
console.log('More or less ' + crd.accuracy + ' meters.');
};
function error(err) {
/*
CALL EXTERNAL API HERE
*/
console.warn('ERROR(' + err.code + '): ' + err.message);
};
navigator.geolocation.getCurrentPosition(success, error, options);
fonte
2014-11-24 18:10:58
fa questo in realtà risolve il problema in questione qui (che la richiesta per permettere di ricerca geolocalizzazione non viene di nuovo dopo che è stato negato una volta) ...? Ne dubito. – CBroe
non risponde alla mia domanda però –
Immagino che l'unico modo per ovviare a questo problema è di aggiornare la pagina (se è un'opzione) per poterla richiedere nuovamente. –