html5对本地离线存储的更好的支持_HTML5的五种客户端离线存储方案

最近折腾HTML5游戏需要离线存储功能,便把目前可用的几种HTML5存储方式研究了下,基于HT for Web写了个综合的实例,分别利用了Cookie、WebStorage、IndexedDB以及FileSystem四种本地离线存储方式,对燃气监控系统的表计位置、朝向、开关以及表值等信息做了CURD的存取操作。

HTML5的存储还有一种Web SQL Database方式,虽然还有浏览器支持,是唯一的关系数据库结构的存储,但W3C以及停止对其的维护和发展,所以这里我们也不再对其进行介绍:Beware. This specification is no longer in active maintenance and the Web Applications Working Group does not intend to maintain it further.

2ce213e369a39433275d5de7d41c62ea.png

整个示例主要就是将HT for Web的DataModel数据模型信息进行序列化和反序列化,这个过程很简单通过dataModel.serialize()将模型序列化成JSON字符串,通过dataModel.deserialize(jsonString)将JSON字符串内存反序列化出模型信息,而存储主要就是主要就是针对JSON字符串进行操作。

4359b419f42b761cb47935e63ea1654e.png

先介绍最简单的存储方式LocalStorage,代码如下,几乎不用介绍就是Key-Value的简单键值对存储结构,Web Storage除了localStorage的持久性存储外,还有针对本次回话的sessionStorage方式,一般情况下localStorage较为常用

function save(dataModel){ var value = dataModel.serialize(); window.localStorage['DataModel'] = value; window.localStorage['DataCount'] = dataModel.size(); console.log(dataModel.size() + ' datas are saved'); return value;}function restore(dataModel){  var value = window.localStorage['DataModel']; if(value){ dataModel.deserialize(value); console.log(window.localStorage['DataCount'] + ' datas are restored'); return value; }  return '';}function clear(){ if(window.localStorage['DataModel']){ console.log(window.localStorage['DataCount'] + ' datas are cleared'); delete window.localStorage['DataModel']; delete window.localStorage['DataCount'];  } }

最古老的存储方式为Cookie,本例中我只能保存一个图元的信息,这种存储方式存储内容很有限,只适合做简单信息存储,存取接口设计得极其反人类,为了介绍HTML5存储方案的完整性我顺便把他给列上:

function getCookieValue(name) { if (document.cookie.length > 0) { var start = document.cookie.indexOf(name + "="); if (start !== -1) { start = start + name.length + 1; var end = document.cookie.indexOf(";
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 前端HTML5和CSS3是网页开发中常用的技术,对于想要学习或者加深自己的前端开发能力的人来说,整理和下载相应的笔记是非常必要的。 HTML5是一种用于构建网页结构的标记语言,它引入了许多新的元素和属性,使得网页能够更好地表达其结构和语义。在HTML5笔记中,可以整理各种标签的使用方法,例如段落、标题、链接、图像等基本标签的使用,同时还可以介绍一些更高级的标签和属性,如多媒体元素、表单元素、Canvas绘图等。此外,HTML5支持一些新的API,如本地存储、地理位置、拖放等,这些也可以作为笔记的一部分来整理和下载。 CSS3则是用于控制网页样式的样式表语言,它引入了丰富的新特性,使得前端开发人员能够更加灵活地控制网页的外观和布局。在CSS3笔记中,可以整理各种选择器、属性和值的用法,例如颜色、字体、背景、边框等的设置,同时还可以介绍一些更高级的特性,如过渡、动画、媒体查询等。此外,CSS3还支持一些新的布局方式,如弹性布局、网格布局等,这些也可以作为笔记的一部分来整理和下载。 通过整理和下载前端HTML5和CSS3的笔记,可以将学习的内容进行系统化和梳理,方便日后查阅和回顾。同时,也可以将笔记分享给其他人,帮助他们快速入门和掌握这些技术。最后,还可以通过不断更新这些笔记,保持自己对HTML5和CSS3相关知识的不断学习和掌握。 ### 回答2: 前端HTML5和CSS3是用于网页开发的两种新技术,它们可以增强网页的功能和美观性。以下是我整理的一些关于前端HTML5和CSS3的笔记,供大家下载使用。 1. HTML5的新特性: - 语义化标签:header、footer、nav等,用于标识网页结构,提高可读性和可访问性。 - 音频和视频元素:可以直接在网页上播放音频和视频文件。 - 表单验证:新增了一些表单验证属性,如required和pattern,可以在网页上进行表单输入验证。 - 本地存储:通过localStorage和sessionStorage可以在客户端存储数据,实现离线应用和提高性能。 - Canvas绘图:使用Canvas元素可以在网页上绘制图形、动画和游戏。 2. CSS3的新特性: - 过渡和动画:通过transition和animation属性可以实现元素的平滑过渡和动态效果。 - 圆角和阴影:通过border-radius和box-shadow属性可以设置元素的圆角和阴影效果。 - 渐变:通过linear-gradient和radial-gradient属性可以实现元素的渐变背景效果。 - 多列布局:通过column-count和column-width属性可以实现多列的文本布局效果。 - 媒体查询:通过media query可以根据不同的设备和屏幕尺寸应用不同的样式。 以上是关于前端HTML5和CSS3的一些笔记,你可以点击以下链接进行下载: [下载链接] 希望这些笔记能对你学习和应用前端开发有所帮助。如果你有任何问题,请随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值