JavaScript:没有通过Geolocation API获取位置

时间:2017-07-21 01:28:47

标签: javascript html5 geolocation

我正在书中练习,出于某种原因,我无法通过Geolocation API将我的坐标发回给我。浏览器提示我获取我的位置的权限,因此有很多工作,但它不会使用"位置"更新div中的文本。 ID。

我认为我正在通过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;
}

1 个答案:

答案 0 :(得分:0)

如今,您必须在大多数浏览器上使用httpS来访问地理位置。本地主机URL可能有效,也可能无效。