日期:2014-05-17  浏览次数:20595 次

HTML5基础,第3部分:HTML5 API的威力

  应用编程接口(application program interface,API)是访问一个软件应用的编程指令和标准的集合。通过使用API,你就可以设计出由API提供的服务来驱动的产品。

  HTML5拥有一些新的API,例如:

  1. 一个与新的画布元素一起使用的2D绘图API,用于渲染图形或是其他的视觉图像。
  2. 一个支持离线web应用的缓存机制的API。
  3. 一个播放视频和音频的API,与新的视频和音频元素一起使用。
  4. 一个历史记录API,其把浏览历史变成可访问的,并允许把页面添加到这一历史中。
  5. 一个和draggable属性一起使用的拖放API。
  6. 一个和contenteditable属性一起使用的编辑API。
  7. 键-值对以及内嵌的SQL数据库的客户端存储,使用了JavaScript API。

  本篇文章重点关注两个API:Geolocation和Web Worker,首先对这些API本身进行分析,然后创建一个包含这两个API的页面。

  无处不在的业务:Geolocation

  Geolocation API被用来确定和分享地理位置,API返回经度和纬度坐标——这是企业可用来在这一坐标附近的区域提供服务的信息,这类服务通常被称作基于位置的服务(location-based service, LBS)。

  LBS以地理数据源为参考,这些地理数据源被用来标识被监控仪器的物理位置,从而识别出与这一位置相关的人。这一功能赋予感兴趣的各方与这一个人进行交互的机会,这种交互是基于一些以地理位置为中心的兴趣点市场来进行的。

  商业实际上是为客户创造品质、实用性和价值,并同时为利益相关者、债权人、股东、员工和供应商创造经济和金融利益。以地理位置为驱动力的LBS使得跟踪和监控一个包裹(或者使用了非浏览器设备或浏览器的个人)变得相当容易。从商业化的角度来说,地理位置所涉及的就是使用地理资产来确定某人或是某物所处的位置,然后把这一特定的一组信息出售给想要把这些信息用于社会、商业或是其他目的的的任何人,只要信息的拥有者的这种做法是法律许可的就可以了。

  地理定位(geolocation)的工作方式

  Geolocation API基于navigator这一全局对象的一个新属性:navigator.geolocation,这一JavaScript的navigator对象提供了一些关于访问者的浏览器和系统的有用信息。Geolocation可以确定使用了IP地址、基于web的数据库、无线网络连接,以及三角定位或是GPS技术的访问者的经度和纬度。应该要注意的一点是,由Geolocation提供的信息的准确性会基于获取信息的手段而发生变化。偶然情况下,在一些位置上,你有可能不能获得明确的地理位置读数或是一点数据都接收不到。

  脚本可使用navigator.geo