HTML5 Geolocation API 用于获得用户的地理位置。

如果用户不允许定位,那么用户信息是不可用的。

获取用户的位置:getCurrentPosition() 返回数据如下

返回用户当前位置: watchPosition()

返回用户的当前位置,并继续返回用户移动时的更新位置。也可使用setinterval()自定义时间执行一次定位函数。

clearWatch()用于停止 watchPosition() 方法

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的key"></script>
<title>定位</title>
</head>
<body>
<h1>Html5定位</h1>
<p id="longitude"></p><!-- 经度值 -->
<p id="latitude"></p><!-- 纬度值 -->
<p id="accuracy"></p><!-- 误差值 -->
<!--<input type="button" value="创建地图" onclick="creatMap()">-->
<div style="width:370px;height:550px;border:#ccc solid 1px;" id="dituContent"></div><!-- 地图容器 -->
<script src="jquery-1.11.3.js"></script>
<script>
//如果支持,获取位置信息
if(navigator.geolocation){
navigator.geolocation.getCurrentPosition(
//locationSuccess
function(position){
showPosition(position);//显示经纬度值
creatMap();//创建地图
},
//locationError
function(error){
var errorType = ['您拒绝共享位置信息', '获取不到位置信息', '获取位置信息超时'];
alert(errorType[error.code - 1]);
}
);
navigator.geolocation.watchPosition(showPosition);
}else{
//document.getElementById('geo_loc').innerHTML="您的浏览器不支持地图定位";
$('#geo_loc').html("您的浏览器不支持地图定位")
}
function showPosition(position){
//在页面上显示经纬度(此处显示的是getLocation获得的经纬度值)
$('#longitude').html(position.coords.longitude)
$('#latitude').html(position.coords.latitude)
//显示误差值
$('#accuracy').html("误差"+position.coords.accuracy)
}
function creatMap(){
var localLongitude = $('#longitude').text();//getLocation得到的经纬度值
var localLatitude = $('#latitude').text();
//根据getLocation得到的经纬度坐标直接创建地图,有很大误差,需要转换为百度的经纬度坐标。
       //请求百度接口转换坐标
var newpoit = 'http://api.map.baidu.com/geoconv/v1/?coords='+localLongitude+','+localLatitude+'&from=1&to=5&ak=你的key';
$.ajax({
type:"POST",
async:false,
url:newpoit,
dataType:"jsonp",
success:function(data){
if(parseInt(data.status)==0){//请求成功
$.each(data.result,function(i,item){
//获转换后的经纬度
var baiduLongitude = item.x;
var baiduLatitude = item.y;
//创建地图
var map = new BMap.Map("dituContent");
map.centerAndZoom(new BMap.Point(baiduLongitude,baiduLatitude),15);
map.enableScrollWheelZoom(true);
var new_point = new BMap.Point(baiduLongitude,baiduLatitude);
var marker = new BMap.Marker(new_point); // 创建标注
map.addOverlay(marker); // 将标注添加到地图中
map.panTo(new_point);
})
}
},
error:function(e){ }
})
}
</script>
</body>
</html>

html5定位getLocation()的更多相关文章

  1. 利用HTML5定位功能,实现在百度地图上定位

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 利用HTML5定位功能,实现在百度地图上定位(转)

    原文:利用HTML5定位功能,实现在百度地图上定位 代码如下: 测试浏览器:ie11定位成功率100%,Safari定位成功率97%,(add by zhj :在手机上测试(用微信内置浏览器打开),无 ...

  3. HTML5定位使用心得

    最近项目中接到一个需求,需要使用百度地图API和HTML5定位特性. 对于百度地图API,没啥好说的,刨它的API就是了. 今天想说说JS定位特性. 浏览器支持 Internet Explorer 9 ...

  4. HTML5定位功能,实现在百度地图上定位

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. html5定位并在百度地图上显示

    在开发移动端 web 或者webapp时,使用百度地图 API 的过程中,经常需要通过手机定位获取当前位置并在地图上居中显示出来,这就需要用到html5的地理定位功能. navigator.geolo ...

  6. html5 定位

    需要实现的功能:移动端的网页,能定位到中文地址. 百度地图能实现这样的功能. 之前精度差得原因是,我用自己的mac做服务器,用手机来浏览定位,这样只能定位到mac 的地址,mac上浏览器的地址就没准了 ...

  7. html5定位获取当前位置并在百度地图上显示

    用html5的地理定位功能通过手机定位获取当前位置并在地图上居中显示出来,下面是百度地图API的使用过程,有需要的朋友可以参考下 在开发移动端 web 或者webapp时,使用百度地图 API 的过程 ...

  8. html5 定位 获得当前位置的经纬度

    if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition, showError, { // ...

  9. HTML5地理定位(已知经纬度,计算两个坐标点之间的距离)

    事实上,地球上任意两个坐标点在地平线上的距离并不是直线,而是球面的弧线. 下面介绍如何利用正矢公式计算已知经纬度数据的两个坐标点之间的距离.半正矢公式也成为Haversine公式,它最早时航海学中的重 ...

随机推荐

  1. 笔记:xubuntu下如何让系统默认使用nvidia显卡,而不是intel集显

    经反复折腾,得到如下的解决方法: prime-select nvidia 简单吧,但关系是如果让它开机自动执行一次. 反复折腾了xinitrc ,~/.xinitrc , /etc/rc.local ...

  2. python序列,字典备忘

    初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...

  3. 来玩Play框架03 模板

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在上一章节中,我把字符串通过ok()返回给客户.我可以把一个完整的html页面放入 ...

  4. MySQL基础知识和操作(一)

  5. spider RPC框架的需求来源与特性介绍(一)

    spider RPC 特性介绍 spider RPC 性能测试 spider RPC 入门指南 spider RPC 配置文件参考 spider RPC 开发指南 spider RPC 安全性 spi ...

  6. cmd命令汇总

    一  cmd 命令 cmd命令大全(第一部分) winver---------检查Windows版本 wmimgmt.msc----打开windows管理体系结构(WMI) wupdmgr------ ...

  7. H5 meta小结

    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1, ...

  8. SharePoint 2013 通过JavaScript实现列表标题列宽度可拖动

    前言 最近有个新需求,用户希望标题栏可以拖动宽度,其实觉得没什么用,既然用户要了又推不掉,就勉为其难实现一下吧. 其实原理比较简单,就是利用JavaScript对标题栏进行宽度控制,然后从网上搜了一下 ...

  9. Android 手机卫士--导航界面4的业务逻辑

    本文实现导航界面4的业务逻辑,导航界面4的界面如下: 本文地址:http://www.cnblogs.com/wuyudong/p/5952640.html,转载请注明出处. 相应的代码如下: pri ...

  10. 网页万能排版布局插件,web视图定位布局创意技术演示页

    html万能排版布局插件,是不是感觉很强大,原理其实很简单,不过功能很强大哈哈,大量节省排版布局时间啊! test.html <!doctype html> <html> &l ...