从Web浏览器获取GPS位置

Gan*_*esh 162 javascript mobile geolocation

我正在开发一个基于移动设备的网站,在那里我集成了谷歌地图,我需要动态填写谷歌地图的"发件人"字段.

是否可以从网络浏览器获取GPS位置并将其填充到Google地图的"发件人"字段中?

doc*_*day 193

如果您使用Geolocation API,它将像使用以下代码一样简单.

navigator.geolocation.getCurrentPosition(function(location) {
  console.log(location.coords.latitude);
  console.log(location.coords.longitude);
  console.log(location.coords.accuracy);
});
Run Code Online (Sandbox Code Playgroud)

您也可以使用Google的客户端位置API.

已经讨论过这个问题是否可以检测移动浏览器的GPS位置?从移动浏览器获取位置数据.你可以在那里找到更多信息.

  • 对于未来的读者,[精度以米为单位](http://stackoverflow.com/q/6719542/2840103)。 (2认同)
  • 这不适用于http网站不是吗? (2认同)
  • 这是否要求使用您的位置? (2认同)

Dan*_*lor 43

请参阅讨论如何在浏览器中获取GPS坐标

在那里你有示例应用程序的链接我在哪里?适用于移动设备.我在我的Android上测试了它,它启动了GPS模块来获取当前坐标.您可以分析生活示例中的来源.

我已经制作了QR码,可以通过手机快速访问:

我在哪里QR码

  • 链接_我在哪里?_返回404错误. (20认同)
  • QR救了我一大堆努力 (5认同)
  • @danubian 请包含本文第一个链接中的相关信息,并删除其余文本,因为链接已损坏。 (2认同)

Tos*_*osh 21

给出更具体的答案.HTML5允许您获取地理坐标,并且它可以完成相当不错的工作.总体而言,浏览器对地理定位的支持非常好,除了ie7和ie8(以及opera mini)之外的所有主流浏览器.IE9完成了这项工作,但表现最差.结帐caniuse.com:

http://caniuse.com/#search=geol

此外,您需要获得用户的批准才能访问其位置,因此请务必检查此位置,并在关闭时提供一些体面的说明.特别是对于Safari的Iphone转换权限有点麻烦.


Ema*_*a.H 13

使用此,您将在http://www.w3schools.com/html/html5_geolocation.asp找到所有信息.

<script>
var x = document.getElementById("demo");
function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
    } else {
        x.innerHTML = "Geolocation is not supported by this browser.";
    }
}
function showPosition(position) {
    x.innerHTML = "Latitude: " + position.coords.latitude + 
    "<br>Longitude: " + position.coords.longitude; 
}
</script>
Run Code Online (Sandbox Code Playgroud)


Que*_*tin 4

GeoLocation API,但目前浏览器支持相当薄弱。大多数关心此类事情的网站都使用 GeoIP 数据库(通常附带条件是此类系统不准确)。您还可以查看需要用户合作的第三方服务,例如FireEagle