Это не совсем то, что вы хотите, но я думаю, что это может быть полезно.
Согласно W3C draft вы можете попытаться получить любое кэшированное значение избраузер (без подтверждения пользователя) или откат к пользовательскому методу, если не найдено кэшированное значение.
Если пользователь согласился предоставить геолокацию, он будет кэширован.Пример из того же проекта W3C:
// Request a position. We only accept cached positions, no matter what
// their age is. If the user agent does not have a cached position at
// all, it will immediately invoke the error callback.
navigator.geolocation.getCurrentPosition(successCallback,
errorCallback,
{maximumAge:Infinity, timeout:0});