如何在javascript函数中获取地理位置的值

Posted

技术标签:

【中文标题】如何在javascript函数中获取地理位置的值【英文标题】:How to get the value of geolocation in a javascript function 【发布时间】:2017-06-06 07:21:16 【问题描述】:

我有以下函数,它有两个值:纬度和经度:

    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); );

【问题讨论】:

【参考方案1】:

注意:当您启动代码时,在浏览器左上角会显示弹出窗口,要求您允许访问您的位置。允许它。如果您允许,它将显示您的位置,否则它将无法找到您的位置。

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

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

Hope it will help you.

【讨论】:

代码很简单 navigator.geolocation.getCurrentPosition(function(position) findGps(position.coords.latitude, position.coords.longitude); ); 你能解释一下你的基本问题是什么【参考方案2】:

您必须调用具有成功和错误回调函数的 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);

【讨论】:

以上是关于如何在javascript函数中获取地理位置的值的主要内容,如果未能解决你的问题,请参考以下文章

如何获取 API 并使用在另一个函数中获得的值?

如何从 javascript 文件中获取函数的值到 ASP.NET MVC 视图?

javascript 如何获取元素在数组中的位置 key

如何在 JS 函数 onchange 事件中获取 Bootstrap Datepicker 的值?

如何从 Javascript 中的对象列表中获取键的值?

JavaScript:以像素为单位获取背景位置