/ / W3C geolocalizzazione, errore: posizione non disponibile - javascript, geolocalizzazione, w3c-geolocation

Geolocalizzazione W3C, errore: posizione non disponibile - javascript, geolocalizzazione, geolocalizzazione w3c

Sto cercando di implementare l'API di geolocalizzazione del W3C,anche se do al browser l'autorizzazione per quanto riguarda la mia posizione, ottengo l'errore 2 (Posizione non disponibile) mentre lo utilizzo da Firefox e ottengo l'errore 1 (Autorizzazione negata) mentre provo da Chrome. Quello che segue è il mio codice:

Pulsante HTML che chiama la funzione JS:

Ora parleremo dell'API di geolocalizzazione

</ P>
<input type="button" name="canbutt" value="draw c" onClick="javascript:geo()"/>

E il mio codice JS:

         function geo(){

if (navigator.geolocation) {

navigator.geolocation.getCurrentPosition(
displayPosition,
displayError);
}
else {
alert("Geolocation is not supported by this browser");
}

function displayPosition(position) {
alert("Latitude: " + position.coords.latitude + ", Longitude: " + position.coords.longitude);
}
function displayError(error) {
var errors = {
1: "Permission denied",
2: "Position unavailable",
3: "Request timeout"
};
alert("Error: " + errors[error.code]);
}


}

function canvas() {
var canvas = document.getElementById("canv");
var context = canvas.getContext("2d");
context.fillStyle="red";
context.strokeStyle="blue";
context.strokeRect(50,25,50,60);
context.fillRect(50,25,50,60);
context.strokeStyle="green";
context.moveTo(0,0);
context.lineTo(300,150);
context.stroke();
context.fillStyle="blue";
context.font="bold 12px Arial";
context.textAlign="start";
context.fillText("This is some Text",50,110);
var gradient=context.createLinearGradient(0,0,100,100);
gradient.addColorStop(0,"white");
gradient.addColorStop(1,"black");
context.fillStyle=gradient;
context.fillRect(50,50,100,100);
context.fillText("Im using Gradient!",60,10);
context.drawImage(image, 20,20);


};

risposte:

1 per risposta № 1

Esistono limitazioni nell'utilizzo della geolocalizzazione da file:/// URI. Prova a caricare la tua pagina su un server web (funziona anche il server locale).