欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!

 

HTML5的出现会使得手机中的原生态APP减少。

HTML5的出现大大节省了人们的开发成本。因为它通吃PCMaciPhoneiPadAndroidWindows Phone等跨语言平台。程序员们再也不必为不同款的手机做不同的APP了。

HTML5的出现使得手机里可以不用再有Flash了。因为HTML5就有这种魔力使得我们观看多媒体时不必安装Flash等第三方插件。

由于第三方插件的减少,手机内存富裕,那么手机电量自然也会相对持久一些。

HTML5使得手机定位服务更便捷,因为它实现了基于地理位置的功能,想定位,直接点击“附近”就能轻松搞定。

HTML5使得设计师们可以设计出更加美观的网页。

来介绍一下HTML5的定位系统!

1.Geolocation

HTML5 geolocation 是一个令人兴奋的 API,通过这套 APIJavascript 代码就能够访问到用户的当前位置。当然,访问之前必须得到用户的明确认可,即同意在页面共享位置。如果页面尝试访问地理位置信息,浏览器就会显示一个对话 框,请求用户许可共享其地理位置信息

用户同意(允许)之后,Geolocation api 就能起作用了。

2.getCurrentPosition 方法

Geolocation API 在浏览器中的实现是 navigator.geolocation 对象,这个对象包含 3 个方法。第一个方法是 getCurrentPosition,调用这个方法就会触发请求用户共享地理定位信息的对话框。

3.watchPosition 方法

如果要跟踪用户的位置,那么可以使用 watchPosition 方法。这个方法的使用和 getCurrentPosition 完全相同。实际上 watchPosition 与定时调用 getCurrentPosition 能得到相同效果。在第一次调用 watchPosition 方法后,会取得当前位置,执行成功回调或者错误回调。然后,watchPosition 就地等待系统发出位置已改变的信号。

调用 watchPosition 会返回一个数值标识符,用于跟踪监控的操作。基于这个返回值可以取消监控操作,只要将其传递给 clearWatch 方法即可(与使用 setTimeout() clearTimeout() 类似),例如:

var watchId = navigator.geolocation.watchPosition(geo_success, geo_error);

clearWatch(watchId);

Geolocation 定位原理

Geolocation API 的数据来源可能是 GPSIP 地址、RFIDWiFi、蓝牙 MAC 地址、GSM/CDMA ID 等。因为 Geolocation API 是运行在你本地设备上的。所以,在使用 VPN 或代理的情况下,Geo API 仍能获得你准确的 IP 地址信息(除非因为某些因素浏览器获取不到这些信息)。

HTML5的实现中,手机等移动设备当然优先使用GPS定位,而笔记本和部分平板,最准的定位是WIFI,至于网线上网的台式机,一般就只能使用IP来定位了,这个准确度最低。

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html5/h37609.shtml