функция сбой никогда не вызывается, если пользователь отказывается поделиться геолокацией в Firefox - PullRequest
47 голосов
/ 10 мая 2011

Итак, у меня есть этот код JavaScript.В Safari и Chrome, если пользователь отказывается поделиться местоположением, он перестает работать, как и должно быть;однако в Firefox это не так.

Любая помощь приветствуется.

function initGeolocation()
{
    if( navigator.geolocation )
    {          
          // Call getCurrentPosition with success and failure callbacks
          navigator.geolocation.getCurrentPosition( success, fail );
    }
    else
    {
          alert("Sorry, your browser does not support geolocation services.");
    }
}

 var map;
 function success(position)
 {

     var longIDText = document.getElementById('longID');
     var latIDText = document.getElementById('latID');
     longIDText.value = position.coords.longitude;
     latIDText.value = position.coords.latitude;
     document.getElementById('coordSubmitID').click();
  }

  function fail(error)
  {
          alert("FAAAAAAAAAAIIIIIIIIIL")
          var zip_code ;
          while (true){
              // Could not obtain location

              zip_code = prompt("Please enter your current address or zip code","");


              if ( zip_code == "" ) {
                  alert(zip_code +" is not a valid address. Please try again.");
              } 
              else{
                break;
              }
          }
          var zipIDText = document.getElementById('zipID');
          zipIDText.value = zip_code;
          document.getElementById('coordSubmitID').click();
  }

Ответы [ 11 ]

0 голосов
/ 25 мая 2012
var latlng; 
if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(function (position) {
         latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
    });
}
if(!latlng) {
    latlng = new google.maps.LatLng(57.718, 11.974); 
}

Handeld все мои ошибки:)

...