支持地理定位的浏览器有IE9+、Firefox 3.5+ 、Opera 10.6+ 、Safari 5+ 、Chrome、iOS 版Safari、Android版WebKit。

 navigator.geolocation.getCurrentPosition(function(position){//成功执行的函数
document.write("当前地理位置纬度:",position.coords.latitude,";经度:",position.coords.longitude,";精度系数:",position.coords.accuracy,"米。<br>");
document.write("海拔高度:",position.coords.altitude,";精度系数:",position.coords.altitudeAccuracy,";指南针方向(0°表示正北):",position.coords.heading,";移动数度:",position.coords.speed);
}, function(error){//失败执行的函数 code 属性表示用户拒绝共享(1)、位置无效(2)或者超时(3)
document.write("错误类型: " + error.code+"<br>");
document.write("错误信息: " + error.message);
}, {
enableHighAccuracy: false, //enableHighAccuracy 是一个布尔值,表示必须尽可能使用最准确的位置信息(建议设置为false,true需要更长的时间,在移动设备上还会导致消耗更多电量)
timeout: 5000, //timeout是以毫秒数表示的等待位置信息的最长时间(超时时间,如果不需要频繁的访问用户的位置,建议设置为Infinity)
maximumAge: 25000 //maximumAge表示上一次取得的坐标信息的有效时间,以毫秒表示,如果时间到则重新取得新坐标信息
});

注:测试过根据api调用百度地图显示当前位置,测试结果与原生应用(安卓,iOS应用)获取的位置偏差较大,不适合做导航定位应用。

如果你希望跟踪用户的位置,那么可以使用另一个方法watchPosition() 。这个方法接收的参数与getCurrentPosition() 方法完全相同。实际上,watchPosition() 与定时调用getCurrentPosition() 的效果相同。在第一次调用 watchPosition()方法后,会取得当前位置,执行成功回调或者错误回调。然后,watchPosition()就地等待系统发出位置已改变的信号(它不会自己轮询位置)。 调用watchPosition() 会返回一个数值标识符,用于跟踪监控的操作。基于这个返回值可以取消监控操作,只要将其传递给clearWatch()方法即可(与使用setTimeout()和clearTimeout()类似)。例如:

 var watchId = navigator.geolocation.watchPosition(function(position){
drawMapCenteredAt(position.coords.latitude, positions.coords.longitude);
}, function(error){
console.log("Error code: " + error.code);
console.log("Error message: " + error.message);
}); clearWatch(watchId);

以上例子调用了watchPosition() 方法,将返回的标识符保存在了watchId 中。然后,又将watchId传给了clearWatch(),取消了监控操作。

html5获取用户当前位置的更多相关文章

  1. 关于html5获取用户地理位置

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...

  2. 获取用户当前位置信息的两种方法——H5、微信

    在之前的 调用百度地图API的总结 中获取当前位置信息我用的是 H5 ,其实微信也提供了获取用户地理位置的方法,现将这两种方法都贴出来,看情况选择使用. 一.H5 获取当前地理位置得到经纬度 // H ...

  3. html5获取用户当前的地理位置,即经纬度。

    $("document").ready(function(){ getMap(); }); function getMap(){ // 百度地图API功能 var map = ne ...

  4. html5获取当前的位置..在地图中

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. H5地理定位获取用户当前位置、城市

    第一步:需要在百度地图开发者平台创建一个应用:http://lbsyun.baidu.com/apiconsole/key/create 配置信息 申请配置成功以后返回一个AK 第二步:引入百度地图的 ...

  6. iOS下获取用户当前位置的信息

    #import <MapKit/MKMapView.h> @interface ViewController (){ CLLocationManager *_currentLoaction ...

  7. uniapp 在h5和小程序上使用高德获取用户城市位置

    开发文档 https://lbs.amap.com/api 错误状态 https://lbs.amap.com/api/webservice/guide/tools/info/ 虽然用的高德但是你还需 ...

  8. 微信小程序之获取用户位置权限(拒绝后提醒)

    微信小程序获取用户当前位置有三个方式: 1. wx.getLocation(多与wx.openLocation一起用) 获取当前的精度.纬度.速度.不需要授权.当type设置为gcj02 返回可用于w ...

  9. ionic 获取手机所在位置

    之前项目中需要使用到定位功能,前边的文章提到的坐标位置是有问题的,是国际坐标,国内的环境使用google地图会出现问题,所以需要使用国内的地图进行坐标解析,因为国内和国外的坐标体系不一致,需要通过转换 ...

随机推荐

  1. liunx下Oracle安装

    1. 引言 将近一个月没有更新博客了,最近忙着数据库数据迁移工作:自己在服务器上搭建了oracle数据库,一步步走下来遇见很多BUG:现在自己记录下,方便以后有用上的地方: 2. 准备工作 oracl ...

  2. 手写ORM入门篇(一)

    对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换 . ...

  3. 通过Logstash由SQLServer向Elasticsearch同步数据

    延用上篇ELK所需环境,新增logstash配置文件 需要数据库链接驱动 Microsoft JDBC driver 6.2 for SQL Server 下载地址: https://www.micr ...

  4. C# vb .net实现位图蒙版特效滤镜

    在.net中,如何简单快捷地实现Photoshop滤镜组中的位图蒙版特效呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第 ...

  5. 洛谷【P1048 采药】题解

    题目链接 分析:典型的01背包问题,设dp[i][j]为空间(也就是题面中的时间)是j的背包在装前i个物品(草药)所得的最大价值,v[i]为第i个物品的重量(采药的时间),w[i]为第i个物品(草药) ...

  6. 2647673 - HANA Installation Failure with signal 11 core dumped

    Symptom HANA 2.0 SPS03 installation using hdblcmgui failed due to the below error message. [Error] / ...

  7. 支付宝支付 微信支付SDK接口不统一? 盘他!

      开发过支付宝.微信支付的同学都知道,微信的支付 API 设计感觉是 Java 开发工程师写的,远不如支付宝 SDK 的接口设计用起来顺手.在这里,统一封装微信支付和支付宝支付的API,使两种支付方 ...

  8. Gitlab创建一个项目(三)使用IntelliJ IDEA开发项目

    Gitlab创建一个项目 Gitlab创建一个项目(二)创建新用户以及分配项目 1.登陆到gitlab 2.点击项目名,获取http的URL 3.idea打开,选择git 4.设置项目路径以及本地保存 ...

  9. Jupyter Notebook修改默认的工作目录

    Jupyter Notebook修改默认的工作目录 方法1:通过配置文件修改 只适合从命令行启动notebook生成配置文件,如果你已经在windows环境变量中设置好了jupyter noteboo ...

  10. SolarWinds-改变端口

    Solarwinds配置文件,修改为80端口(默认为8123) C:\Program Files\SolarWinds\DPA\iwc\tomcat\conf\server.xml