html5本地存储之localstorage 、本地数据库、sessionStorage简单使用示例


Posted in HTML / CSS onMay 08, 2014

html5的一个非常cool的功能,就是web storage,类似于之前的cookie,不过与之不同的是,web storage 拥有本地5兆的容量可以存储,而cookie却只有4K,这是完全不能比的优势。
webstrange又分为:localstorage,sessionstorage和本地数据库。

接下来我就来一一介绍:

1、localstorage
localstorage 的使用比较简单,方法有:

复制代码
代码如下:

localStorage.setItem(key,value);//保存数据
localStorage.getItem(key);//读取数据
localStorage.removeItem(key);//删除单个数据
localStorage.clear();//删除所有数据
key:localStorage.key(index);//得到某个索引的值

一个小demo来展示功能:

复制代码
代码如下:

(function($){
$(function(){
$.fn.getFormParam=function(){
var serializeObj={};
var array=this.serializeArray();
var str=this.serialize();
$(array).each(function(){
if(serializeObj[this.name]){
if($.isArray(serializeObj[this.name])){
serializeObj[this.name].push(this.value);
}else{
serializeObj[this.name]=[serializeObj[this.name],this.value];
}
}else{
serializeObj[this.name]=this.value;
}
});
return serializeObj;
};</p> <p> var storageFile =JSON.parse(window.localStorage.getItem('demo'));
$.each(storageFile, function(i, val){
$('#demoForm').find('[name="'+i+'"]').val(val);
});</p> <p> $('#demoForm').find('[type="submit"]').on('click', function(){
var data = $('#demoForm').getFormParam();
window.localStorage.setItem('demo', JSON.stringify(data));
return false;
});
});
})(jQuery)

html 代码:

复制代码
代码如下:

<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<script src="jquery-1.10.2.min.js"></script>
<script src="demo.js"></script>
<title>Document</title>
</head>
<body>
<form id="demoForm">
<p><label><span>姓名</span><input name="name"></label></p>
<p><label><span>年龄</span><input name="age"></label></p>
<p><label><span>学号</span><input name="number"></label></p>
<p><label><span>地址</span><input name="address"></label></p>
<p><label><span>爱好</span><input name="habit"></label></p>
<p><label><span>其他</span><textarea name="big" id="" cols="30" rows="10"></textarea></label></p>
<p><input type="submit" value="提交"></p>
</form>
</body>
</html>

这样,一个简单的展示localstorage 的 demo就实现了

2、sessionStorage
sessionStorage用法与localStorage用法相同,不过sessionStorage在浏览器关闭网站时候就会清除,而localStorage会一直保存至浏览器中,二者酌情配合使用。

3、本地数据库
熟悉IOS/Android开发的同学,应该会对SQLite数据库比较熟悉
html5中对数据库的操作比较简单,主要有openDatabase方法和transaction方法
用一个对象db来接收openDatabase创建的访问数据库的对象

复制代码
代码如下:

var db = openDatabase(databasename,version,description,size)

其中
databasename:数据库名
version:数据库版本 可不填
desription:数据库描述
size:数据库分配空间大小
 
transaction方法用一个回调函数作为参数,在函数中执行具体的访问数据库的方法

复制代码
代码如下:

db.transaction(function(tx)){
tx.executeSql(sqlQuery,[value1,value2..],dataHandler,errorHandler)
});

executeSql方法的四个参数分别是:

sqlQuery:需要具体执行的sql语句,create||select||update||delete;

[value1,value2..]:sql语句中所有使用到的参数的数组,在executeSql方法中,将sql语句中所要使用的参数先用“?”代替,然后依次将这些参数组成数组放在第二个参数中;

dataHandler:执行成功回调函数;

errorHandler:执行失败回调函数;

HTML / CSS 相关文章推荐
你正在寻找的CSS3 动画技术
Jul 27 HTML / CSS
css3制作动态进度条以及附加jQuery百分比数字显示
Dec 13 HTML / CSS
CSS3 Media Queries详细介绍和使用实例
May 08 HTML / CSS
CSS3中的Transition过度与Animation动画属性使用要点
May 20 HTML / CSS
一篇文章带你学习CSS3图片边框
Nov 04 HTML / CSS
CSS3 文字动画效果
Nov 12 HTML / CSS
解决img标签上下出现间隙的方法
Dec 14 HTML / CSS
HTML5实现分享到微信好友朋友圈QQ好友QQ空间微博二维码功能
Jan 03 HTML / CSS
HTML5 Canvas 起步(2) - 路径
May 12 HTML / CSS
HTML5 Canvas实现平移/放缩/旋转deom示例(附截图)
Jul 04 HTML / CSS
使用Html5 Stream开发实时监控系统
Jun 02 HTML / CSS
HTML5中 rem适配方案与 viewport 适配问题详解
Apr 27 HTML / CSS
Data URI scheme详解和使用实例及图片base64编码实现方法
May 08 #HTML / CSS
HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等
May 08 #HTML / CSS
html5实现canvas阴影效果示例
May 07 #HTML / CSS
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
May 07 #HTML / CSS
HTML5资源预加载(Link prefetch)详细介绍(给你的网页加速)
May 07 #HTML / CSS
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
May 07 #HTML / CSS
html5 datalist标签使用示例(自动完成组件)
May 04 #HTML / CSS
You might like
基于PHP 面向对象之成员方法详解
2013/05/04 PHP
PHP+Mysql基于事务处理实现转账功能的方法
2015/07/08 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
在Javascript中定义对象类别
2006/12/22 Javascript
jQuery+jqmodal弹出窗口实现代码分明
2010/06/14 Javascript
JQuery中使用Ajax赋值给全局变量异常的解决方法
2014/01/10 Javascript
模拟用户点击弹出新页面不会被浏览器拦截
2014/04/08 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
js+css简单实现网页换肤效果
2015/12/29 Javascript
window.onerror()的用法与实例分析
2016/01/27 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
JS异步函数队列功能实例分析
2017/11/28 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
node.js基于socket.io快速实现一个实时通讯应用
2019/04/23 Javascript
如何解决js函数防抖、节流出现的问题
2019/06/17 Javascript
用Python实现web端用户登录和注册功能的教程
2015/04/30 Python
Python基于select实现的socket服务器
2016/04/13 Python
Python爬虫DOTA排行榜爬取实例(分享)
2017/06/13 Python
Python3 处理JSON的实例详解
2017/10/29 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
Python使用random模块生成随机数操作实例详解
2019/09/17 Python
如何基于Python爬取隐秘的角落评论
2020/07/02 Python
Html5调用手机摄像头并实现人脸识别的实现
2018/12/21 HTML / CSS
工商管理专业大学生职业生涯规划范文
2014/03/09 职场文书
诚信考试倡议书
2014/04/15 职场文书
公司捐款倡议书
2014/05/14 职场文书
毕业大学生自荐信
2014/06/17 职场文书
工地标语大全
2014/06/18 职场文书
干部个人对照检查材料
2014/08/25 职场文书
雷峰塔导游词
2015/02/09 职场文书
2015年维修电工工作总结
2015/04/25 职场文书
农村党员干部承诺书
2015/05/04 职场文书
会计试用期工作总结2015
2015/05/28 职场文书
美元符号 $
2022/02/17 杂记
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏