HTML5技术

HTML5规范的本地存储 - 柠檬先生

字号+ 作者:H5之家 来源:H5之家 2015-12-07 09:54 我要评论( )

在HTML5 中定义了两种本地存储的,Web Storage 和本地数据库 SQL Database . 用来检查判断浏览器是否支持 Web Storage if(window.localStorage){ //浏览器支持localStorage } if(window.sessionStorage){ //浏览器支持sessionStorage } localStorage 主要作

在HTML5 中定义了两种本地存储的,Web Storage 和本地数据库 SQL Database .
  用来检查判断浏览器是否支持 Web Storage
  if(window.localStorage){
    //浏览器支持localStorage
  }
  if(window.sessionStorage){
    //浏览器支持sessionStorage
  }


localStorage 主要作用是将数据保存在客户端中,也就是用户的计算机上。 是基于域的,在该域的任何网页都可以访问,在不同设备上存储的是不同的。
  在本地存储一个字符串类型的数据 key/value setItem
    localStorage.setItem("name","非一般的黑客")
  通过getItem 方法读取key 值为name的值。
    localStorage.getItem("name")
  也可以通过索引去读取,localStorage.key(1)
  删除指定key为“name”的item
    localStorage.removeItem("name")
  删除localStorage 所有key/value

 

存储JSON 格式的数据
  //定义JSON 格式字符串。
    var userData ={
      name:"Sankyu Name",
      account:"sankyu",
      level:1,
      disabled:true
    }
  //存储userData 数据。
    localStorage.setItem("userData",JSON.stringify(userData));
  //读取userdata 数据并赋值给新变量newUserData
    var newUserDta = JSON.parse(localStorage.getItem("userData"))
  //删除本地存储的item
    localStorage.removeItem("userData")
  //输出对象
    alert(newUserData);

采用重新设置的item 方案修改JSON 对象数据。


  //定义JSON 格式字符串。
    var userData ={
      name:"Sankyu Name",
      account:"sankyu",
      level:1,
      disabled:true
  }
  //存储userData 数据。
    localStorage.setItem("userData",JSON.stringify(userData));

  //读取userdata 数据并赋值给新变量newUserData
    var newUserDta = JSON.parse(localStorage.getItem("userData"));

    userData.name = "new Sankyu Name";

    localStorage.setItem("userData",JSON.stringify(userData))

    alert(userData.name)

    alert(JSON.parse(localStorage.getItem("userData")).name);

    采用点语法更新JSON 对象内数据

 //定义JSON 格式字符串。
    var userData ={
      name:"Sankyu Name",
      account:"sankyu",
      level:1,
      disabled:true
    }

   //存储userData 数据。
    localStorage.setItem("userData",JSON.stringify(userData));

  //读取userdata 数据并赋值给新变量newUserData
    var newUserDta = JSON.parse(localStorage.getItem("userData"))

    JSON.parse(localStorage.getItem("userData")).name = "new Sankyu Name";

    userData.name = "new Sankyu Name";

    alert(userData.name)

    alert(JSON.parse(localStorage.getItem("userData")).name);


sessionStorage主要作用是将数据保存在当前回话中,存储的数据的生命周期只保存在存储的当前窗口或由当前窗口
    新建的新窗口,直到想关联的标签页关闭。

    Storage 事件监听
      创建一个页面该页面的主要功能是操作LocalStorage
      window.onload = function(){
          localStorage.clear();
          localStorage.setItem("userData","storage demo");
          localStorage.setItem("userData","storage event demo");
      };
  新增一个页面:
    window.onload = function (){
      window.addEventListener("storage",function(e){
        console.log(e);
      },true)
    }

离线应用:

  离线与缓存, 都是为了更好地缓存各种文件以提高读取的速度, 网页缓存依赖于网络的存在,二离线应用在离线下仍然可以。
  页面缓存主要是缓存当前页面的相关内容,页仅限于当前页面的读取。
  if(window.applicationCache){
    //浏览器支持离线应用,在此编写离线应用功能。
  }
  mainfest 文件、
    <html mainfwst="cache.manifest">

  applicationCache 对象和事件。
  applicationCache 对象记录着本地缓存的各种状态及事件,可以通过 window.applicationCache.status 获得。

HTML5表单元素。
  1.form 属性。
    <input form=testform> 外部的<input>就属于form 表单范围。
  2.placeholder 属性 未输入状态下给出文本框的提示内容。
    <input type="text" placeholder="请输入内容"/>
  3. autofocus 控件自动获得焦点。
    <input type="text" autofocus>
  4.required 必填属性,如果表单中存在required 属性的元素时,如果元素为空,则无法提交表单。
    <input type="text" required/>                                  
移动web表单的input类型,
  1.search 主要用于搜索关键词的文本框类型。外观为圆角文本框。
  2.email 主要用于输入E-mail 地址的文本框,会根据当前的文本框类型显示想对应的键盘。
  3.numner 主要用于输入数字的文本框类型, 可以配合min 属性 max 属性,以及step 属性。
  4.range 主要是一种数值范围输入文本框, 一种滑动输入方式,需要配合 min max range 等属性使用。ios Android 内置浏览器都不支持。
  5.tel 主要是一种供用户输入电话号码的文本框, 提供数字键盘输入法。
  6.url 主要是一种输入URL 地址的文本框类型, 提供的输入法是网址输入法键盘。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • HTML5 进阶系列:拖放 API 实现拖放排序 - _林鑫

    HTML5 进阶系列:拖放 API 实现拖放排序 - _林鑫

    2017-05-02 11:02

  • HTML5 进阶系列:indexedDB 数据库 - _林鑫

    HTML5 进阶系列:indexedDB 数据库 - _林鑫

    2017-04-27 14:02

  • HTML5 高级系列:web Storage - _林鑫

    HTML5 高级系列:web Storage - _林鑫

    2017-04-27 14:01

  • HTML5和CSS3 - 奔跑在起跑线佼佼者

    HTML5和CSS3 - 奔跑在起跑线佼佼者

    2017-04-20 13:00

网友点评