一、地理位置
  经度  :   南北极的连接线
  纬度  :   东西连接的线
 
二、位置信息从何而来
  IP地址
  GPS全球定位系统
  Wi-Fi无线网络
  基站
 
 
 
 
三、地理位置对象(navigator.geolocation
  – 单次定位请求  :getCurrentPosition(请求成功,请求失败,数据收集方式)
 
  –请求成功函数
    »经度 :  coords.longitude
    »纬度 :  coords.latitude
    »准确度 :  coords.accuracy
    »海拔 :  coords.altitude
    »海拔准确度 :  coords.altitudeAcuracy
    »行进方向 :  coords.heading
    »地面速度 :  coords.speed
    »时间戳 : new Date(position.timestamp)
 
  – 请求失败函数
    »失败编号  :code
      »0  :  不包括其他错误编号中的错误
      »1  :  用户拒绝浏览器获取位置信息
      »2  :  尝试获取用户信息,但失败了
      »3  :   设置了timeout值,获取位置超时了
 
  –数据收集 :  json的形式
    »enableHighAcuracy  :  更精确的查找,默认false
    »timeout  :  获取位置允许最长时间,默认infinity
    »maximumAge :  位置可以缓存的最大时间,默认0
<script>
//LBS : 基于地图信息的应用
window.onload = function(){
var oInput = document.getElementById('input1');
var oT = document.getElementById('t1'); oInput.onclick = function(){ navigator.geolocation.getCurrentPosition(function(position){ oT.value += '经度:' + position.coords.longitude+'\n';
oT.value += '纬度 :' + position.coords.latitude+'\n';
oT.value += '准确度 :' + position.coords.accuracy+'\n'; //就是经度和纬度的准确度,没什么用处
oT.value += '海拔 :' + position.coords.altitude+'\n';
oT.value += '海拔准确度 :' + position.coords.altitudeAcuracy+'\n';
oT.value += '行进方向 :' + position.coords.heading+'\n'; //移动设备上才有用,PC不支持
oT.value += '地面速度 :' + position.coords.speed+'\n'; //移动设备上才有用,PC不支持
oT.value += '时间戳:' + new Date(position.timestamp)+'\n';
},function(err){
alert( err.code );//err.code // 失败所对应的编号 },{
enableHighAcuracy : true,
timeout : 5000,
maximumAge : 5000 //每次请求定位的时候,如果不超过这个设置的时间,那么就不重新请求定位,而是用缓存
}); };
};
</script>
</head> <body>
<input type="button" value="请求" id="input1" /><br />
<textarea id="t1" style="width:400px; height:400px; border:1px #000 solid;"></textarea>
</body>
  –多次定位请求  :  watchPosition(像setInterval)
    »移动设备有用,位置改变才会触发
    »配置参数:frequency 更新的频率

  –关闭更新请求  :  clearWatch(像clearInterval)

<script>

//LBS : 基于地图信息的应用

window.onload = function(){
var oInput = document.getElementById('input1');
var oT = document.getElementById('t1'); var timer = null; oInput.onclick = function(){ timer = navigator.geolocation.watchPosition(function(position){ //多次定位请求,返回一个id,通过这个id清除多次定位请求 oT.value += '经度:' + position.coords.longitude+'\n';
oT.value += '纬度 :' + position.coords.latitude+'\n';
oT.value += '准确度 :' + position.coords.accuracy+'\n';
oT.value += '海拔 :' + position.coords.altitude+'\n';
oT.value += '海拔准确度 :' + position.coords.altitudeAcuracy+'\n';
oT.value += '行进方向 :' + position.coords.heading+'\n';
oT.value += '地面速度 :' + position.coords.speed+'\n';
oT.value += '时间戳:' + new Date(position.timestamp)+'\n'; },function(err){
alert( err.code );// 失败所对应的编号
navigator.geolocation.clearWatch(timer);//通过多次定位请求返回的id关闭更新请求 },{
enableHighAcuracy : true,
timeout : 5000,
maximumAge : 5000,
frequency : 1000 //更新的频率(多次定位请求的频率)
}); }; };
</script>
</head>
<body>
<input type="button" value="请求" id="input1" /><br />
<textarea id="t1" style="width:400px; height:400px; border:1px #000 solid;"></textarea>
</body>
 
 

HTML5地理位置概述和地理位置对象的详解的更多相关文章

  1. javascript event(事件对象)详解

    javascript event(事件对象)详解   1. 事件对象     1. 事件对象 Event 对象代表事件的状态,比如事件在其中发生的元素.键盘按键的状态.鼠标的位置.鼠标按钮的状态. 什 ...

  2. 010-Scala单例对象、伴生对象实战详解

    010-Scala单例对象.伴生对象实战详解 Scala单例对象详解 函数的最后一行是返回值 子项目 Scala伴生对象代码实战 object对象的私有成员可以直接被class伴生类访问,但是不可以被 ...

  3. openerp经典收藏 对象定义详解(转载)

    对象定义详解 原文地址:http://shine-it.net/index.php/topic,2159.0.htmlhttp://blog.sina.com.cn/s/blog_57ded94e01 ...

  4. HTML5有语义的内联元素详解

    HTML5有语义的内联元素详解 time标签 time 元素表示一个时间值,比如 5:35 P.M., EST, April 23, 2007.例如: Example Source Code:< ...

  5. JAVA对象头详解(含32位虚拟机与64位虚拟机)

    为什么要学习Java对象头 学习Java对象头主要是为了解synchronized底层原理,synchronized锁升级过程,Java并发编程等. JAVA对象头 由于Java面向对象的思想,在JV ...

  6. 18.Java 封装详解/多态详解/类对象转型详解

    封装概述 简述 封装是面向对象的三大特征之一. 封装优点 提高代码的安全性. 提高代码的复用性. "高内聚":封装细节,便于修改内部代码,提高可维护性. "低耦合&quo ...

  7. 三:python 对象类型详解一:数字(上)

    一:python 的数字类型: a)整数和浮点数 b)复数 c)固定精度的十进制数 d)有理分数 e)集合 f)布尔类型 g)无穷的整数精度 h)各种数字内置函数和模块 二:各种数字类型的详解 1,数 ...

  8. CorelDRAW中如何复制对象属性详解

    复制对象属性是一种比较特殊.重要的复制方法,它可以方便而快捷地将指定对象中的轮廓笔.轮廓色.填充和文本属性通过复制的方法应用到所选对象中.本教程将详解CorelDRAW中如何复制对象属性. Corel ...

  9. HTML5 FileReader读取Blob对象API详解

    使用FileReader对象,web应用程序可以异步的读取存储在用户计算机上的文件(或者原始数据缓冲)内容,可以使用File对象或者Blob对象来指定所要读取的文件或数据.其中File对象可以是来自用 ...

随机推荐

  1. Java学习之路(六)

    1:包及和访问权限 将类放置到一个包当中,需要使用package “包名” 编译时需要使用 -d 参数  该参数的作用是依照包名生成相应的文件夹 一个类的全民应该是  “包名” + “.” + “类名 ...

  2. C#递归1~100的累加

    public static int Accum(int m, int n) { //对于接受的参数,要考虑m >n,m=n,m<n三种情况. if (m < n) { return ...

  3. Uva 1347,旅行

    题目链接:https://uva.onlinejudge.org/external/13/1347.pdf 这个题和uva 1658题目很像,只是加了一点,就是每个点都要走,刚开始,我以为可以直接拆点 ...

  4. 华东交通大学2016年ACM“双基”程序设计竞赛 1005

    Problem Description 最近侯ry感觉自己在数学方面的造诣不忍直视:他发现他的学习速率呈一个指数函数递增,疯狂的陷入学习的泥潭,无法自拔:他的队友发现了他的学习速率y=e^(b*lna ...

  5. c++类中的常量

    C++类中的常量 由于#define 定义的宏常量是全局的,不能达到目的,于是想当然地觉得应该用 const 修饰数据成员来实现.const 数据成员的确是存在的,但其含义却不是我们所期望的.cons ...

  6. 2016年11月13日 星期日 --出埃及记 Exodus 20:4

    2016年11月13日 星期日 --出埃及记 Exodus 20:4 "You shall not make for yourself an idol in the form of anyt ...

  7. HTML基础 整理

    HTML:超文本传输协议 (Hyper Markup Language) CSS:网页美化 (Cascading Style Sheets) JS:java-scipt 脚本语言 Dreamweave ...

  8. bootstrp水平表单格式

    1:form里添加类 "form-horizontal" 2:把标签和表单控件(input 等)放在一个带有类名 "form-group"的div里 3:标签可 ...

  9. git log 查看 提交历史

    在提交了若干更新之后,又或者克隆了某个项目,想回顾下提交历史,可以使用 Git log 命令查看. 接下来的例子会用我专门用于演示的 simplegit 项目,运行下面的命令获取该项目源代码: git ...

  10. ABAP基本数据类型、通用类型

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...