2017-06-06 72 views
0

我有以下函数,它接受两个值:纬度和经度:如何获得在javascript函数地理位置的价值

getgps(latitude , longitude); 

,我需要为此从地理定位功能获取数据:

<script> 

function getLocation() { 
    if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(showPosition); 
    } 
} 
function showPosition(position) { 
    var x = position.coords.latitude; 
    var y = position.coords.longitude; 
getgps(x , y); 

} 
    </script> 

,但它不工作

好剧本

navigator.geolocation.getCurrentPosition(function(position) { 
findGps(position.coords.latitude, position.coords.longitude); }); 

回答

0

注:当你开始你的代码,在浏览器左上角它显示弹出式广告的要求允许访问您的位置。允许它。如果你允许,它会显示你的位置,否则它将无法找到你的位置。

如果我明白你的问题是正确的。这是你想实现的工作代码。参阅https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/Using_geolocation

Working fiddle: `https://jsfiddle.net/api/mdn/` 

Hope it will help you. 
+0

的代码只是navigator.geolocation.getCurrentPosition(功能(位置){ findGps(position.coords.latitude,position.coords.longitude); }); – user1619177

+0

你能解释一下你的基本问题 –

0

您必须调用navigator.geolocation函数,该函数具有成功和错误回调函数。

尝试打电话给你gepgps功能在成功回调,像这样:

 var onGeoSuccess = function(position) {     
      getgps(position.coords.latitude, position.coords.longitude) 
     }; 

     function onGeoError(error) { 
      alert('code: ' + error.code + '\n' + 
       'message: ' + error.message + '\n'); 
     } 

     navigator.geolocation.getCurrentPosition(onGeoSuccess, onGeoError);