HTML5 Geolocation(地理定位)
HTML5 Geolocation(地理定位)用于定位用户的位置。
定位用户的位置
HTML5 Geolocation API 用于获得用户的地理位置。
鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的。
浏览器支持
Internet Explorer 9+, Firefox, Chrome, Safari 和 Opera 支持Geolocation(地理定位).
注意: Geolocation(地理定位)对于拥有 GPS 的设备,比如 iPhone,地理定位更加精确。
HTML5 - 使用地理定位
请使用 getCurrentPosition() 方法来获得用户的位置。
下例是一个简单的地理定位实例,可返回用户位置的经度和纬度:
实例
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{x.innerHTML="该浏览器不支持获取地理位置。";}
}
function showPosition(position)
{
x.innerHTML="Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
</script>
尝试一下 »
实例解析:
- 检测是否支持地理定位
- 如果支持,则运行 getCurrentPosition() 方法。如果不支持,则向用户显示一段消息。
- 如果getCurrentPosition()运行成功,则向参数showPosition中规定的函数返回一个coordinates对象
- showPosition() 函数获得并显示经度和纬度
上面的例子是一个非常基础的地理定位脚本,不含错误处理。
处理错误和拒绝
getCurrentPosition() 方法的第二个参数用于处理错误。它规定当获取用户位置失败时运行的函数:
实例
{
switch(error.code)
{
case error.PERMISSION_DENIED:
x.innerHTML="用户拒绝对获取地理位置的请求。"
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML="位置信息是不可用的。"
break;
case error.TIMEOUT:
x.innerHTML="请求用户地理位置超时。"
break;
case error.UNKNOWN_ERROR:
x.innerHTML="未知错误。"
break;
}
}
尝试一下 »
错误代码:
- Permission denied - 用户不允许地理定位
- Position unavailable - 无法获取当前位置
- Timeout - 操作超时
在地图中显示结果
如需在地图中显示结果,您需要访问可使用经纬度的地图服务,比如谷歌地图或百度地图:
实例
{
var latlon=position.coords.latitude+","+position.coords.longitude;
var img_url="http://maps.googleapis.com/maps/api/staticmap?center="
+latlon+"&zoom=14&size=400x300&sensor=false";
document.getElementById("mapholder").innerHTML="<img src='"+img_url+"'>";
}
尝试一下 »
在上例中,我们使用返回的经纬度数据在谷歌地图中显示位置(使用静态图像)。
Google地图脚本
上面的链接向您演示如何使用脚本来显示带有标记、缩放和拖曳选项的交互式地图。
给定位置的信息
本页演示的是如何在地图上显示用户的位置。不过,地理定位对于给定位置的信息同样很有用处。
实例:
- 更新本地信息
- 显示用户周围的兴趣点
- 交互式车载导航系统 (GPS)
getCurrentPosition() 方法 - 返回数据
T若成功,则 getCurrentPosition() 方法返回对象。始终会返回 latitude、longitude 以及 accuracy 属性。如果可用,则会返回其他下面的属性。
coords.latitude | 十进制数的纬度 |
coords.longitude | 十进制数的经度 |
coords.accuracy | 位置精度 |
coords.altitude | 海拔,海平面以上以米计 |
coords.altitudeAccuracy | 位置的海拔精度 |
coords.heading | 方向,从正北开始以度计 |
coords.speed | 速度,以米/每秒计 |
timestamp | 响应的日期/时间 |
Geolocation 对象 - 其他有趣的方法
watchPosition() - 返回用户的当前位置,并继续返回用户移动时的更新位置(就像汽车上的 GPS)。
clearWatch() - 停止 watchPosition() 方法
下面的例子展示 watchPosition() 方法。您需要一台精确的 GPS 设备来测试该例(比如 iPhone):
实例
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.watchPosition(showPosition);
}
else{x.innerHTML="该浏览器不支持获取地理位置。";}
}
function showPosition(position)
{
x.innerHTML="纬度: " + position.coords.latitude +
"<br>经度: " + position.coords.longitude;
}
</script>
尝试一下 »
相关推荐
geolocation地理定位
- **当前**:HTML5 Geolocation API的出现极大地简化了地理定位应用的开发过程,推动了移动应用和增强现实应用的发展。 通过以上知识点的详细介绍,我们可以了解到HTML5地理位置定位技术的基本概念、工作原理以及...
使用HTML的地理定位代码,首先需要检查浏览器是否支持Geolocation API。然后,通过`navigator.geolocation`对象来获取位置信息。这个对象提供了`getCurrentPosition()`方法,用于获取当前地理位置,并可以通过...
HTML5 地理定位 作为 HTML 演变的一部分而提供的新 API 之一是地理定位。 这是浏览器根据实际 GPS 数据、ISP、IP 地址或 Wi-Fi 网络返回设备纬度和经度的能力。 参考 CODEPEN ##Links 以帮助进行地理定位 以下是...
个人出行:用户个人出行,不确定路程、目的地等信息,选择出行工具,点击开始,系统实时监听用户手机位置得到WGS84经纬度坐标(w3c HTML5 Geolocation地理定位标准),行程结束,记录本次出行信息,经纬度坐标转换...
HTML5的地理定位功能演示
这个“html5地理位置定位功能.zip”压缩包包含了一个名为“11.html5地理位置定位功能”的文件,很可能是演示或讲解如何在HTML5中实现这一特性的代码示例或教程。 HTML5的地理位置定位API允许网页获取用户的地理位置...
- **地理定位API**:`navigator.geolocation`是HTML5中用于获取用户地理位置信息的核心接口。主要方法包括`getCurrentPosition()`和`watchPosition()`等。 - **地理定位API方法**: - `getCurrentPosition()`: 一...
HTML5地理定位API由`navigator.geolocation`对象提供,其中包含了以下关键方法: 1. **`getCurrentPosition()`**:立即获取当前位置信息。该方法接受三个参数: - `successHandler`:成功获取位置后的回调函数,...
为了顺应这个潮流,HTML5为我们提供了Geolocation库,有了它我们就能够在Web应用中轻而易举地实现上述这些功能。那么今天我就为大家介绍一下这个库的使用。 基本用法 首先,我们可以从浏览器的navigator对象中通过...
地理定位API是HTML5的一个核心组件,通过navigator.geolocation对象提供服务。开发者可以使用这个API请求用户的当前位置,用户可以选择接受或拒绝这个请求。一旦获得许可,API将返回经纬度坐标,甚至包括高度、速度...
这个“geolocation:浏览器 HTML5 JS 地理定位演示”是针对JavaScript编程语言的一个示例项目,旨在帮助开发者理解和实践如何在浏览器环境中使用HTML5的Geolocation API。 JavaScript作为Web开发的主流脚本语言,其...
HTML5是现代网页开发的核心标准之一,其引入了许多新的特性和功能,其中之一就是Geolocation API。这个API允许web应用获取用户的地理位置信息,为构建位置感知的应用提供了强大的支持。"HTML5Geolocation-英文原版....
HTML5 Geolocation是一种在Web应用中获取用户地理位置信息的关键技术,它是HTML5标准的重要组成部分,使得开发者无需依赖浏览器插件就能实现定位功能。基于这项技术的考勤管理系统方案旨在利用现代浏览器的功能,...
HTML5程序设计中的单元6专注于HTML5地理定位技术,这是现代网页开发中一个重要的功能,允许网站和应用程序访问用户的地理位置信息。以下是对这个单元主要内容的详细说明: **地理位置信息表示方式** 在HTML5中,...
总结,基于浏览器的HTML5地理定位是通过HTML5 Geolocation API获取设备位置信息,然后结合地图API(如高德地图JS API)将这些信息在地图上展示出来。这个过程涉及到用户权限、安全策略以及各种兼容性处理,是现代Web...
HTML5的Geolocation API为Web应用提供了强大的地理定位功能。通过`navigator.geolocation`对象,我们可以获取到用户的经纬度、高度、精度等信息,实现如地图应用、导航服务等功能。同时,通过异常处理,我们可以对...