【问题标题】:How navigator.geolocation.getCurrentPosition gets location coordinates of a client browsernavigator.geolocation.getCurrentPosition 如何获取客户端浏览器的位置坐标
【发布时间】:2011-11-19 08:59:50
【问题描述】:

我正在使用浏览器 API 进行地理定位,如下所示(下面编写的代码仅用于演示)

使用 jQuery 的客户端脚本

       $(function () {
            $('#link-getlocation').click(function () {

                navigator.geolocation.getCurrentPosition(function(loc){
                       alert(loc.coords.latitude + ', ' + loc.coords.longitude);
                });                    
            });
        });

HTML

<a href="javascript:" id="link-getlocation">Get Location</a>

演示

http://jsfiddle.net/yhHnD/1/

我的问题是浏览器如何检测用户的位置坐标

【问题讨论】:

    标签: javascript browser geolocation navigator


    【解决方案1】:

    这取决于客户端浏览器的功能。

    • 如果运行浏览器的设备有 GPS(例如手机),它通常使用基于 GPS 的定位
    • 如果设备在 WLAN 上,浏览器可以利用 WLAN 位置数据(例如,通过 Google 定位服务)
    • 否则它很可能会使用 GeoIP 数据库

    其中大部分取决于操作系统和浏览器支持,并且可能因浏览器而异。

    【讨论】:

    • 那么在笔记本电脑上它通常会定位无线网络的来源而不是您的实际位置?
    • 据我了解,WLAN 定位通常涉及分析您可见的所有接入点的信号强度。然后,如果已知 AP 的坐标,则也可以估计您的位置。其准确性可能会有很大差异,但通常仍比地理 IP 数据库更准确。
    猜你喜欢
    • 1970-01-01
    • 2020-02-12
    • 1970-01-01
    • 2016-09-14
    • 1970-01-01
    • 2018-06-20
    • 2012-09-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多