HTML5 IndexedDB:轻量级NoSQL数据库

IndexedDB是HTML5-WebStorage的重要一环,是一种轻量级NoSQL数据库。

w3c为IndexedDB定义了很多接口,其中Database对象被定义为IDBDataBase。

浏览器对象中,实现了IDBFactory的只有indexedDB这个实例。

五步创建HTML5离线Web应用

在HTML5提供的所有炫酷功能里,创建离线缓存网页是我最喜欢的一个特性,以下是五步快速创建HTML5离线Web应用的步骤

1. 第一步:创建一个有效的HTML5文档,HTML5 doctype比xhtml更易于识记。

创建一个名为index.html的文件,这里学习如何使用CSS3来策划网站布局。

2. 新增.htaccess支持

我们要创建的缓存页面称为manifest文件,假设你所使用的服务器是Apache,我们在创建文件之前,需要往.htaccess文件新增一个指令。

打开.htaccess文件,该文件部署在网站的根目录下,新增以下代码:

AddType text/cache-manifest .manifest

该指令可以确保每一个.manifest文件文本高速缓存。如果该文件不存在,整个缓存效果就无法实现,页面也不能实现离线缓存。

3. 创建.manifest文件

在我们创建好了.manifest文件后,事情就变得有趣多了。创建好新文件,命名为offline.manifest,嵌入以下代码。

CACHE MANIFEST

#Thisisa comment

CACHE

index.html

style.css

image.jpg

image-med.jpg

image-small.jpg

notre-dame.jpg

现在你拥有了一个完美的manifest列表。其实原理很简单,在声明CACHE后,你可以列出自己想要离线缓存的文件。这个对于缓存一个简单的网页,已经是绰绰有余了,而HTML5的缓存有其它一些有趣的功能。

CACHE MANIFEST

#Thisisa comment

CACHE

index.html

style.css

NETWORK:

search.php

login.php

FALLBACK:/api offline.html

在这个示例中,manifest文件声明了CACHE,用于缓存index.html和style.css。同时,我们声明了NETWORK,用于指定不被缓存的文件,比如登录页面。

最后声明的是FALLBACK,这个声明允许将用户转入一个指定的页面,比如本例中如果不打算离线查看API资源的话,可以转向Off.html页面。

4. 将manifest 文件链接到HTML文档中。

在manifest文件和主要的html文档准备好了以后,你唯一还需要做的事情是将manifest文件链接到html文档中。

操作方法很简单,只需在html元算中添加manifest 属性,代码如下:

5. 测试

一旦完成好以后,可以开始测试了。如果你使用Firefox 3.5+来访问index.html文件,你可以看到下面的图片。

像其它的浏览器,比如(Chrome, Safari, Android 和 iPhone) 不会弹出文件缓存的相关提示,文件会自动缓存。

Firefox: 3.5+、Safari: 4.0+、Chrome: 5.0+、Opera: 10.6+、iPhone: 2.1+、Android: 2.0+都对这种技术提供支持,IE不支持。

html5缓存的功能,HTML 5新特性:Web应用缓存实现离线浏览相关推荐

  1. 【Redis】 - Redis 6.0 新特性之客户端缓存

    Redis 6.0 新特性之客户端缓存 1. 为什么需要客户端缓存 1.1 低延迟和大规模提供数据服务 1.2 其他 cache 层 2. Redis 中的客户端缓存 2.1 什么样的数据集应该被客户 ...

  2. Spring4新特性——Web开发的增强

    2019独角兽企业重金招聘Python工程师标准>>> Spring4新特性--泛型限定式依赖注入 Spring4新特性--核心容器的其他改进 Spring4新特性--Web开发的增 ...

  3. js考试题 html5新特性,Web前端初级面试题总结

    Web前端初级面试题总结 发布时间:2018-11-02 11:17, 浏览次数:549 , 标签: Web Web篇: 1.常见的浏览器内核有哪些? IE:Trident内核            ...

  4. HTML5学习01-基础讲解、新特性

    一.基础讲解 二.新特性 三.兼容性 HTML5为了保证兼容前面各个版本,语法达到了最大程度的兼容设计. (1).不允许写结束标记的元素: area.base.br.col.command.embed ...

  5. java 文档比较功能_Java 12 新特性介绍,快来补一补

    Java 12 早在 2019 年 3 月 19 日发布,它不是一个长久支持(LTS)版本.在这之前我们已经介绍过其他版本的新特性,如果需要可以点击下面的链接进行阅读. Switch 表达式 (JEP ...

  6. html5语义化边框,Html5、Css3、ES6的新特性

    html5的新特性 1.语义化标签有利于seo,有助于爬虫抓取更多的有效信息,爬虫是依赖于标签来确定上下文和各个关键字的权重. 语义化的html在没有css的情况下也能呈现较好的内容结构与代码结构 方 ...

  7. 现代C++新特性 强枚举类型(PC浏览效果更佳)

    文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载 1. 枚举类型的弊 C++之父本贾尼·斯特劳斯特卢普曾经在他的The Design And Evolution Of ...

  8. iOS新特性框架、仿微信图片浏览、视频监控、爱心动画、文字适配等源码

    iOS精选源码 iOS一个看电影.电视剧集合 HDCinema 一个非常简易的新特性集成框架NewFeatures 全自动化的文字适配 仿微信朋友圈图片浏览器 iOS你的爱心❤️动画源码 一个类似系统 ...

  9. h5是什么 www.php.cn,20分钟看懂html5 看看H5都有啥新特性

    什么是HTML? HTML(Hyper Text Mark-up Language).超文本标记语言.HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字.图形.动画.声音.表格.链 ...

最新文章

  1. 【Java 并发编程】线程池机制 ( 线程池状态分析 | 线程池状态转换 | RUNNING | SHUTDOWN | STOP | TIDYING | TERMINATED )
  2. python学习 day19
  3. 史上最详细阿里云Docker下载运行Zookeeper!!!!
  4. scrapy框架爬虫文件配置
  5. 创业产品经理需要懂技术吗?
  6. bzoj 1634: [Usaco2007 Jan]Protecting the Flowers 护花(贪心排序)
  7. MSSql使用SQL语句快速查看表对的就说明,及表字段描述及字段类型
  8. 我的U盘,在某台机器上所有文件大小为0
  9. Java学习笔记之设计模式(4)适配器模式
  10. [Android ] 进度条组件ProgressBar
  11. 解决设置easyUI tabs onSelect事件时提示tabs未定义的方法
  12. 32把数组排成最小的数({3,32,321}输出最小数字为321323)
  13. b ,B,KB,MB,GB之间的关系
  14. 护眼台灯真的管用?全光谱led护眼灯到底值不值得入手
  15. React-Redux 中文文档
  16. FTTB+NAT+DHCP+pppoe+CBAC+*** client+Authentication AAA
  17. 操作系统实验一:线程的创建与撤销
  18. python中pandas检索某一个具体值(具体到一个元素)
  19. wap.php区别,WAP与PHP程序设计之基础篇
  20. 组图:1988年汉城奥运会

热门文章

  1. 根据自己维护的工作日历表查询7个工作日后的日期
  2. 此次为大家带来的是关于一些PLC编程控制入门常用到的实例,以此为借鉴,让学PLC的进度条缩短,加大掌握程度。里面包含的知识点是较为齐全的,如:I/O分配表、PLC接线图、梯形图程序等。 一、电动机顺
  3. qimage 像素 替换颜色_米8精简版拥有24MP前置摄像头与使用超级像素技术索尼IMX576传感器...
  4. 日本的feature phone版twitter的follow链接
  5. 公钥加密,私钥解密;私钥签名,公钥验签
  6. wxpython收费吗_wxpython收费吗_有学习wxpython的同好吗
  7. 计算长方形的周长和面积(类和对象java)
  8. 软件安全测试-BurpSuite使用详解
  9. 吴恩达机器学习Day2
  10. 《画解数据结构》二十五彩图,画解平衡二叉树