1
var x=document.getElementById("demo");
function getLocation()
{
  if (navigator.geolocation)
    navigator.geolocation.getCurrentPosition(showPosition,showError);
  else
    x.innerHTML="Geolocation is not supported by this browser.";    
}

function showPosition(position)
{
  x.innerHTML="Latitude: " + position.coords.latitude + 
  "<br>Longitude: " + position.coords.longitude;    
}

function showError(error)
{
  switch(error.code) 
  {
    case error.PERMISSION_DENIED:
      alert("User denied the request for Geolocation.");
      break;
    case error.POSITION_UNAVAILABLE:
      alert("Location information is unavailable.");
      break;
    case error.TIMEOUT:
      alert("The request to get user location timed out.");
      break;
    case error.UNKNOWN_ERROR:
      alert("An unknown error occurred.");
      break;
  }
}

I have activated Google map Geolocation service, and also checked the "Allow sites to access the physical location" option in the browser. But still "PERMISSION_DENIED" error code is thrown.

Deepu S A
  • 369
  • 3
  • 6
  • 17

1 Answers1

1

It works fine with the help of a http server. There are some security restriction issues in Chrome for using geolocation from a 'file:/// URI'. Chrome also has problem with reading an external file like XML with 'file:///' uri.

Deepu S A
  • 369
  • 3
  • 6
  • 17