html5 离线存储 地理信息与本地存储

搭建离线应用程序
  ①服务器设置头信息 :
    AddType text/cache-manifest .manifest
  ② html标签加 :
    manifest=“xxxxx.manifest”
  ③写manifest文件 : 离线的清单列表
    先写 : CACHE MANIFEST
  FALLBACK : 第一个网络地址没获取到,就走第二个缓存的
  NETWORK :无论缓存中存在与否,均从网络获取


web Workers
  Worker运行环境
    navgator : appName、appVersion、userAgent、platform
    location : 所有属性都是只读的
  self : 指向全局 worker 对象
    所有的ECMA对象,Object、Array、Date等
  XMLHttpRequest构造器
    setTimeout和setInterval方法
  close()方法,立刻停止worker运行
    importScripts方法

  内容编辑
    contenteditable = "true"
  语言输入

  <input type="text" x-webkit-speech/>

地理位置对象

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

    多次定位请求 : watchPosition(像setInterval)
      移动设备有用,位置改变才会触发
      配置参数:frequency 更新的频率

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

本地存储:
    Cookie
      数据存储到计算机中,通过浏览器控制添加与删除数据
    Cookie的特点
  存储限制
    域名100个cookie,每组值大小4KB
    客户端、服务器端,都会请求服务器(头信息)
  页面间的cookie是共享
  Storage
    sessionStorage
      session临时回话,从页面打开到页面关闭的时间段窗口的临时存储,页面关闭,本地存储消失
    localStorage
      永久存储(可以手动删除数据)
    Storage的特点
      存储量限制 ( 5M )
    客户端完成,不会请求服务器处理
      sessionStorage数据是不共享、 localStorage共享

  Storage API
    setItem():
      设置数据,keyvalue类型,类型都是字符串可以用获取属性的形式操作
    getItem():
      获取数据,通过key来获取到相应的value
    removeItem():
      删除数据,通过key来删除相应的value
    clear():
      删除全部存储的值

  存储事件:
    当数据有修改或删除的情况下,就会触发storage事件
    在对数据进行改变的窗口对象上是不会触发的
      Key : 修改或删除的key值,如果调用clear(),key为null
      newValue : 新设置的值,如果调用removeStorage(),key为null
      oldValue : 调用改变前的value值
      storageArea : 当前的storage对象
      url : 触发该脚本变化的文档的url
    注:session同窗口才可以,