Sitter här och leker lite med HTML 5 och försöker bland annat få geolocation att fungera. Har knackat ihop koden nedan och den fungerar.. knappt. Tror att jag har fått det att fungera en eller två gånger, annars fastnar den på "Checking..." utan att ens ge ett felmeddelande. Google Maps fungerar däremot hälften av gångerna, så det känns som att det är något som saknas här. Har testat i Safari 5, senaste Chrome, Firefox 4 och Safari Mobile på en iPhone 4 med samma resultat.
Kan någon se något fel? Fungerar det för er? Finns det något debug verktyg så man kan se vad det är som går fel? Resultatet ska vara att den säger "Your location" samt din lat / lon.
<html>
<body>
<span id="status">Checking...</span>
<script type="text/javascript">
function success(position) {
var lat = position.coords.latitude;
var lon = position.coords.longitude;
var s = document.querySelector('#status');
s.innerHTML = "<b>Your Position</b><p>" + lat + "</p> <p>" + lon + "</p>";
}
function fail(error) {
var s = document.querySelector('#status');
switch(error.code) {
case error.PERMISSION_DENIED:
s.innerHTML = "<b>ERROR: Permission denied</b>";
break;
case error.POSITION_UNAVAILABLE:
s.innerHTML = "<b>ERROR: Could not find position.</b>";
break;
case error.TIMEOUT:
s.innerHTML = "<b>ERROR: Timed out</b>";
break;
default:
s.innerHTML = "<b>ERROR: Unknown</b>";
break;
}
}
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(success, fail);
} else {
document.write('Not supported...');
}
</script>
</body>
</html>