2017-07-21 9 views
0

私は書籍から練習をしています。何らかの理由でジオロケーションAPIが私の座標を送り返すことができません。ブラウザは自分の場所を取得する権限を私に求めているので、多くは機能していますが、divのテキストは「場所」IDで更新されません。JavaScript:ジオロケーションAPI経由で場所を取得していません

私はdocument.getElementById機能によって正しく要素にアクセスしていると思います。

HTML:

<!doctype html> 
<html> 
    <head> 
     <meta charset = "utf-8"> 
     <title>Where am I?</title> 
     <script src="loc.js"></script> 
     <link rel="stylesheet" href="loc.css"> 
    </head> 

    <body> 
     <div id="location"> 
      Your location will be here. 
     </div> 
    </body> 

</html> 

JS:

window.onload = getMyLocation; 

function getMyLocation(){ 
    if(navigator.geolocation){ 
     navigator.geolocation.getCurrentPosition(displayLocation); 
    } else { 
     alert("Ooops, no geolocation support!") 
    } 
} 

function displayLocation(position){ 
    var latitude = position.coords.latitude; 
    var longitude = position.coords.longitude; 

    var div = document.getElementById("location"); 
    div.innerHTML = "You are at Latitude: " + latitude + ", Longtitude: " + longitude; 
} 
+0

私はちょうどあなたのコードを実行し、それは働いた。あなたはGoogleから緯度/経度を正しく取得していますが、ディスプレイのみが機能していませんか? –

+0

私は(私が行う)許可を与えるように求められますが、ページは元のH​​TMLから更新されません。それはちょうど「あなたの場所はここにあります」と言います。 「あなたは緯度:X、経度:Y」を取得している場合、問題はコードではなく私の最後であると思います。 – Matt

+0

あなたのコードでは、経度がアラート(経度)を入れた後です。番号を取得する必要があります。 –

答えて

0

あなたがジオロケーションにアクセスするために、これらの日、ほとんどのブラウザでHTTPSを使用する必要があります。ローカルホストのURLが動作していても動作していない可能性があります。

関連する問題