从启用 GPS 的设备获取当前纬度和经度

发布于 2024-09-13 08:53:20 字数 84 浏览 6 评论 0原文

我想直接从网络浏览器获取启用 GPS 的移动设备当前位置的纬度和经度。我可以知道这可能吗?怎么办呢?需要地理定位 api 吗?一些编码示例会有帮助。谢谢。

I would like to get the latitude and longitude of current location from gps enabled mobile device right from the web browser. May I know is this possible? how to do it? does it require geolocation api? Some coding example would be helpful. Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

你在我安 2024-09-20 08:53:20

使用 HTML5 地理定位 API,这里是官方规范和示例

编辑

我已经更新了我的答案以包含当前的浏览器支持。

W3C 地理定位 API 支持

Firefox 3.5+
Safari 5.0+
Chrome 5.0+
Opera
iPhone 3.0+
Android 2.0+

· ·
上面未列出的其他手机使用 Gears 或其自己的特定于平台的 API。

啊,我们会只有一个 API 吗? :)

非常感谢 Mark Pilgrim 的精彩帖子

Use the HTML5 Geolocation API, here's the official spec and examples.

EDIT

I've updated my answer to include current browser support.

W3C Geolocation API support

Firefox 3.5+
Safari 5.0+
Chrome 5.0+
Opera
iPhone 3.0+
Android 2.0+

· ·
Other phones not listed above use Gears or their own, platform-specific APIs.

Ahh, will we ever have just one single API? :)

Many thanks to Mark Pilgrim for his awesome post.

十二 2024-09-20 08:53:20

这是使用 HTML5 Geolocation API 的实际 JavaScript 代码。以下内容适用于 Android 浏览器和 iPhone Safari:

            function onPositionUpdate(position)
            {
                var lat = position.coords.latitude;
                var lng = position.coords.longitude;
                alert("Current position: " + lat + " " + lng);
            }

            if(navigator.geolocation)
                navigator.geolocation.getCurrentPosition(onPositionUpdate);
            else
                alert("navigator.geolocation is not available");

Here is an actual JavaScript code which uses HTML5 Geolocation API. The following works on both Android browser and iPhone Safari:

            function onPositionUpdate(position)
            {
                var lat = position.coords.latitude;
                var lng = position.coords.longitude;
                alert("Current position: " + lat + " " + lng);
            }

            if(navigator.geolocation)
                navigator.geolocation.getCurrentPosition(onPositionUpdate);
            else
                alert("navigator.geolocation is not available");
二智少女猫性小仙女 2024-09-20 08:53:20

您不必拥有最新的手机即可使用 GPS 和地理定位 API。几乎每个移动浏览器(没有代理服务器)都可以用来从内置 GPS 读取位置。如果您的手机中有 Java 和 GPS – 您可以使用 mobile-gps-web-gate – 请参阅 http://code.google.com/p/mobile-gps-web-gate/

You don’t have to have the newest mobile phone to use GPS and Geolocation API. Almost every mobile browser (without proxy server) can be used to read position from buidin GPS. If You have Java and GPS in Your phone – You can use mobile-gps-web-gate – see at http://code.google.com/p/mobile-gps-web-gate/

执手闯天涯 2024-09-20 08:53:20

将来对某人有帮助

<!DOCTYPE html>
<html>
<body>

<p>Click the button to get your coordinates.</p>
<button onclick="getLocation()">Try It</button>
<p id="demo"></p>
<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) {
 var a = position.coords.latitude + ',' + position.coords.longitude;

 alert(a);
}
</script>
</body>
</html>

can be helpful in future for someone

<!DOCTYPE html>
<html>
<body>

<p>Click the button to get your coordinates.</p>
<button onclick="getLocation()">Try It</button>
<p id="demo"></p>
<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) {
 var a = position.coords.latitude + ',' + position.coords.longitude;

 alert(a);
}
</script>
</body>
</html>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文