在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 地址的文本框类型, 提供的输入法是网址输入法键盘。

  不是广泛支持的 input 类型
    datetime 类型,日期和时间文本框(含时区)。
    datetime-local 类型,日期和时间文本框(不含时区)。
    Time 类型,时间选择器文本框。
    Date 类型, 日期选择器文本框。
    Week 类型,年的周号选择器。
    Month 类型,月份选择器。

HTML5规范的本地存储的更多相关文章

  1. HTML5新增的本地存储功能(笔记)

    HTML5新增的本地存储功能分为两种,分别对应两个JS对象:①本地存储对应localStorage对象,主要用于长期保存整个网站的数据(这些数据可以永久保存在客户端电脑硬盘内).②会话存储对应sess ...

  2. HTML5教程之本地存储SessionStorage

    SessionStorage: 将数据保存在session对象中,所谓session是指用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间会话,也就是用户浏览这个网站所花费的时间就是sess ...

  3. HTML5 使用localstorage 本地存储

    HTML 本地存储介绍 最早的 Cookies 自然是大家都知道,问题主要就是太小,大概也就 4KB 的样子,而且 IE6 只支持每个域名20个cookies,太少了.优势就是大家都支持,而且支持得还 ...

  4. HTML5学习总结——本地存储

    一.HTML4客户端存储 B/S架构的应用大量的信息存储在服务器端,客户端通过请求响应的方式从服务器获得数据,这样集中存储也会给服务器带来相应的压力,有些数据可以直接存储在客户端,传统的Web技术中会 ...

  5. HTML5开发学习:本地存储Web Sql Database

       Web Sql Database,中文翻译作"本地数据库",是随着HTML5规范加入的在浏览器端运行的轻量级数据库.    在HTML5中,大大丰富了客户端本地可以存储的内容 ...

  6. 初识html5的localStorage本地存储

    一.概述 HTML5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储 sessionStorage - 针对一个 session 的数据存储 之前,这些都是 ...

  7. HTML5 JS API 本地存储LocalStorage基本操作

    LocalStorage:使用方法与SessionStorage如出一辙,如下代码所示:此对象主要有两个方法:保存数据:localStorage.setItem(Key, value);读取数据:lo ...

  8. Html5中的本地存储

    Web Storage web storage页面存储是html5为数据存储在客户端提供的一项重要功能,由于web storage API能够区分会话数据与长期数据.因此,相应API也分为两种: se ...

  9. html5画图和本地存储

    <!DOCTYPE HTML><html><body> <canvas id="myCanvas" width="200&quo ...

随机推荐

  1. Java WebService简单使用

    一直在写java但从来没有使用webservice,在网上查了下资料写个简单的使用放这里做备份 具体步骤: 1.新建一个java工程在里面写一个类(服务端)如下: package com.webser ...

  2. 解决配置android开发环境eclipse获取ADT获取不到,一直"Pending"

    在安装完Android SDK后eclipse要获取ADT, 可是由于GFW的存在, eclipse经常无法从http://dl-ssl.google.com/android/eclipse 获取到任 ...

  3. WEB开发总结(持续更新。。。)

    近期开始搞搞web的东西,觉得有必要把遇到的问题总结一下,就在这里当做个笔记本吧. 1.用maven建立的web工程,在运行的时候,右键找不到“Run on server”菜单: 可以在命令提示行中, ...

  4. HDU-4690 EBCDIC 映射,模拟,沙茶

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4690 纯沙茶模拟题... //STATUS:C++_AC_93MS_228KB #include &l ...

  5. Bzoj-2818 Gcd 欧拉函数

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2818 题意:给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x ...

  6. c# DataTable中使用排序的时候注意事项

    背景: 在项目使用DataTable的时候,使用到了其中ExtendedProperties的属性,但是之后出了问题:在排序之后ExtendedProperties的自定义的键值丢失了,代码如下: 误 ...

  7. Umbraco Forms 使Rendering Forms scripts 在不同的template中

    具体请参考 https://our.umbraco.org/documentation/products/umbracoforms/developer/Rendering-Scripts/ 转载 ht ...

  8. Android studio优点及快捷键

    alt+回车 提示错误信息 ctrl+shift+回车 补全代码 ctrl+alt+o 导入包 ctrl+p 查看方法的参数 ctrl+alt+t 可以弹出包围结构的代码提示 例如if android ...

  9. Protobuf-net学习笔记

    对于Socket应用来说,如何序列化和反序列化消息一直是比较头痛的问题,C#提供了自动序列化的功能(类似AS3中的AMF),但是唯一的缺点就是前后端都必须是C#实现,如果前后端语言不一致该怎么办? G ...

  10. 4G通信技术LTE介绍

    参考文档在这里 LTE技术 LTE是继GSM/EDGE和UMTS/HSxPA之后的由3GPP推出的移动网络技术最新标准,属于4G. 未来网络需要更高的数据速率,和包路由优化系统.更好的QoA和更廉价的 ...