`
emptyhan
  • 浏览: 29831 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

html5-地理位置定位 API 接口开发

阅读更多
转载自【http://www.656463.com/article/336】

HTML5地理位置定位API接口开发包括:地理位置定位原理与介绍和HTML5中地理位置定位的方法,最后获取经纬度显示当前位置在百度地图上

地理位置定位原理与介绍
地理位置定位的几种方式:IP地址,GPS,Wifi,GSM/CDMA

地理位置获取流程:

1、用户打开需要获取地理位置的web应用。
2、应用向浏览器请求地理位置,浏览器弹出询问,询问用户是否共享地理位置。
3、假设用户允许,浏览器从设别查询相关信息。
4、浏览器将相关信息发送到一个信任的位置服务器,服务器返回具体的地理位置。

HTML5地理地位的实现:
1. 实现基于浏览器(无需后端支持)获取用户的地理位置技术
2. 精确定位用户的地理位置( 精度最高达10m之内,依赖设备)
3. 持续追踪用户的地理位置
4. 与 Google Map、或者 BaiduMap 交互呈现位置信息。


HTML5中地理位置定位的方法

关于 Geolocation对象
Geolocation API 用于将用户当前地理位置信息共享给信任的站点,这涉及用户的隐私安全问题,所以当一个站点需要获取用户的当前地理位置,浏览器会提示用户是“允许”or “拒绝”。


先看看哪些浏览器支持GeolocationAPI:
IE9.0+、FF3.5+、Safari5.0+、Chrome5.0+、Opera10.6+、IPhone3.0+、Android2.0+

GeolocationAPI存在于navigator对象中,只包含3个方法:
1、getCurrentPosition   //当前位置
2、watchPosition           //监视位置
3、clearWatch               //清除监视

getCurrentPosition(success,error,option)方法最多可以有三个参数:
第一个参数是成功获取位置信息的回调函数,它是方法唯一必须的参数;
第二个参数用于捕获获取位置信息出错的情况,
第三个参数是配置项。


navigator.geolocation.getCurrentPosition( … , function(error){
switch(error.code){ 
        case error.TIMEOUT : 
            alert( " 连接超时,请重试 " ); 
            break; 
        case error.PERMISSION_DENIED : 
            alert( " 您拒绝了使用位置共享服务,查询已取消 " ); 
            break; 
        case error.POSITION_UNAVAILABLE :  
            alert( " ,抱歉,暂时无法为您所在的星球提供位置服务 " ); 
            break; 
    } 
});

navigator.geolocation.getCurrentPosition( … , … , option);
  
option配置项,第三个参数是一个对象,该对象影响了获取位置时的一些细节。
 enableHighAccuracy ,它将告诉浏览器是否启用高精度设备,所谓的高精度设备包含但不局限于前面所提到的 GPS 和 WIFI,值为 true 的时候,浏览器会尝试启用这些设备,默认指为 true。 
    timeout,超时,获取位置信息时超出设定的这个时长,将会触发错误,捕获错误的函数将被调用,并且错误码指向TIMEOUT。 这样我们尝试修改调用 getCurrentPosition 时传递的参数

watchPosition像一个追踪器与clearWatch成对。
watchPosition与clearWatch有点像setInterval和clearInterval的工作方式。
var watchPositionId = navigator.geolocation
    .watchPosition(success_callback,
                  error_callback, options);
navigator.geolocation.clearWatch(watchPositionId );

利用HTML5和百度地图API实现地理定位
完整源码:
<!DOCTYPE html>
<head>
<meta charset=gbk>
<title>HTML5 地理位置定位 API 接口开发</title>
<script type="text/javascript"
src="http://api.map.baidu.com/api?key=&v1=1.1&services=true">
</script>
</head>
  
<body>
<div style="width:697px;height:550px;border: #ccc solid 1px;"
id="mapContent"></div>
  
<script type="text/javascript">
if(navigator.geolocation){
    navigator.geolocation.getCurrentPosition(
        function(p){
            var latitude = p.coords.latitude;
            var longitude = p.coords.longitude;
            createMap(latitude,longitude);
        },
        function(e){
            var msg = e.code+"\n"+e.message;
        }
    );
}else{
    alert("不支持");
}
  
function createMap(a,b){
    var map = new BMap.Map("mapContent");
    var point = new BMap.Point(b,a);
    map.centerAndZoom(point,20);
    window.map=map;
}
</script>
</body>
</html>

在电脑上显示的地理位置不是很准确
分享到:
评论

相关推荐

    html5中地理位置定位api接口开发应用小结

    地理位置定位的几种方式:IP地址,GPS,Wifi,GSM/CDMA 地理位置获取流程: 1、用户打开需要获取地理位置的web应用。 2、应用向浏览器请求地理位置,浏览器弹出询问,询问用户是否共享地理位置。 3、假设用户允许,...

    Android使用_HTML_5地理定位_API.pptx

    - **地理定位API**:`navigator.geolocation`是HTML5中用于获取用户地理位置信息的核心接口。主要方法包括`getCurrentPosition()`和`watchPosition()`等。 - **地理定位API方法**: - `getCurrentPosition()`: 一...

    HTML5 api 调用示例

    6. **Geolocation API**:允许网页获取用户的地理位置信息,通常用于个性化服务或导航应用。`navigator.geolocation.getCurrentPosition()`方法可以请求用户的当前位置。 7. **WebSocket API**:提供双向通信能力,...

    js腾讯地图api获取坐标定位地理位置_soso地图api获取坐标

    在这个场景下,腾讯地图API和搜搜地图API提供了丰富的功能,允许开发者通过编程方式获取和操作地图上的坐标信息,从而实现地理位置定位等功能。 首先,我们需要理解什么是地图API。API是Application Programming ...

    html5培训之地理定位

    值得注意的是,HTML5地理定位API本身并不实现这些定位方法,而是作为浏览器与操作系统之间的接口,调用操作系统的定位服务来获取位置信息。 #### 三、HTML5地理定位API HTML5地理定位API由`navigator.geolocation`...

    移动端报表JS开发示例--获取定位

    首先,从技术角度看,移动端报表的JS开发中获取定位需要使用HTML5的地理位置API,通过JavaScript调用设备的GPS或网络定位服务。这是一个广泛支持的技术,几乎所有的现代浏览器和移动端设备都对其提供了支持。而在...

    html5_API文档

    HTML5 API文档是Web开发领域中的重要参考资料,它详尽地介绍了HTML5中引入的各种新的API接口和技术标准,旨在帮助开发者充分利用这些功能来构建更强大、更具交互性的网页应用。HTML5 API的出现极大地扩展了网页开发...

    如何使用HTML5地理位置定位功能

    HTML5提供了地理位置定位功能(Geolocation API),能确定用户位置,我们可以借助HTML5的该特性开发基于地理位置信息的应用。本文结合实例给大家分享如何使用HTML5,借助百度、谷歌地图接口来获取用户准确的地理位置...

    开发指南--百度地图JavaScript API大众版.doc

    2. **HTML5定位**:在支持HTML5的浏览器中,可以获取更精确的用户地理位置。 **六、交互功能** 1. **右键菜单**:在地图上添加右键菜单,扩展地图功能。 2. **鼠标样式**:动态修改鼠标样式。 3. **鼠标操作**:...

    基于浏览器的HTML5地理定位.docx

    HTML5地理定位是现代网页开发中的一个重要特性,它允许网页应用获取访问设备的地理位置信息,如经度和纬度坐标。这项技术主要依赖于HTML5的Geolocation API,该API提供了一种标准化的方法来获取用户的地理位置,使得...

    H5Plus API使用

    在移动开发领域,H5Plus是一个强大的框架,它扩展了HTML5的能力,使得开发者能够创建出具有原生应用性能的Web应用。这个框架提供了一系列API,使得开发者可以更方便地控制设备功能和系统资源,从而提升用户体验。在...

    html5定位代码

    HTML5定位技术是现代网页开发中的一个重要特性...通过学习和实践这个压缩包中的代码,你可以更好地理解和掌握HTML5的地理位置定位功能,提升你的Web开发技能。同时,也要注意遵循最佳实践,确保用户隐私得到妥善保护。

    WEB开发 之 HTML5 地理定位.docx

    HTML5地理定位是Web开发中的一个重要特性,允许网站获取用户设备的地理位置信息。这一功能的引入,极大地丰富了Web应用的交互性和实用性,特别是在提供基于位置的服务,如导航、天气预报、附近商家搜索等方面。 ...

    深入html5应用开发--文字版.pdf

    HTML5地理定位API允许Web应用访问用户的地理位置信息,从而使应用能够提供基于位置的个性化内容和服务。用户的位置可以通过多种方式获取,包括但不限于GPS、Wi-Fi、IP地址、蓝牙、蜂窝网络等。W3C Geolocation API...

    高德API在web端的调用(定位方面)

    在Web开发中,地图服务是不可或缺的一部分,尤其是在需要提供地理位置信息、导航或定位服务的应用中。高德API作为一款强大的地图服务提供商,为开发者提供了丰富的功能。本文将深入探讨如何在Web端调用高德API,特别...

    通过Ajax让GPS地址实时在高德地图中定位显示

    GPS(全球定位系统)是一种基于卫星导航的定位系统,能提供地理位置信息。在Web应用中,通常是通过设备的Geolocation API获取用户的GPS坐标。这个API允许浏览器获取用户当前的位置信息,包括经度和纬度。不过,需要...

    5.地理定位.pdf_html5_hospitaldev_

    1. **HTML5 Geolocation API**:这是浏览器内置的一个接口,用于获取设备(如手机或电脑)的地理位置信息。这个API遵循W3C的规范,旨在保护用户隐私的同时提供位置服务。 2. **getCurrentPosition()**:这是...

    swift-百度地图定位Cordova插件支持AndroidIOS

    在这个案例中,插件将JavaScript接口暴露给Web层,允许开发者调用百度地图的定位API,而实际的定位操作则由Android和iOS的原生代码处理。这样,开发者无需深入学习两个平台的底层细节,就能轻松地实现定位功能。 ...

Global site tag (gtag.js) - Google Analytics