首页 web前端 H5教程 HTML5应用:离线的应用以及存储的应用

HTML5应用:离线的应用以及存储的应用

Aug 08, 2018 am 09:53 AM

本篇文章给大家带来的内容是关于HTML5应用:离线的应用以及存储的应用,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

1.离线应用

离线应用是 HTML 5 新增的以想功能,旨在帮助用户在没有网络的情况下,也可以使用 web 应用程序。
HTML 5 离线功能,包含【离线资源缓存】、【在线状态监测】、【本地数据存储】。

  • 离线资源缓存 - 通过浏览器机制,将在线资源缓存到本地,当用户离线访问应用程序时,这些资源文件自动从本地加载,从而让用户可以正常的使用应用程序。

  • 在线状态监测 - 有些应用需要跟服务器做一些数据的交互,应用开发者需要知道浏览器是否处于在线状态,HTML 5 提供了在线状态监测。(window.online = function(){})

  • 本地数据存储 - 当应用程序处于离线状态时,程序需要把用户产生的数据存储到本地,以便于在线时同步到服务器上。为此,HTML 5 提供了多种本地存储机制。

离线 web 应用对比普通的 web 应用,多了一个描述文件,用于列出【需要缓存】和【永不缓存】的资源。该文件扩展名为【.appcache】,描述文件的 mime-type 类型为 “text/cache-manifest”。

offline.appcache 文件的代码如下

CACHE MANIFEST
#cache 之后的资源都会被缓存
CACHE:
main.html
style.css
main.js
#network 之后的资源不会被缓存,总是从线上获取
NETWORK:
account/
登录后复制

如果离线化应用程序,只需将 .html 文件 和 manifest 描述文件关联起来即可

<html manifest="./offline.appcache"></html>
登录后复制

2.LocalStorage(本地存储) 和 SessionStorage(会话存储)

cookie 的弊端

  • 大小受限 - 标准浏览器下,单个Cookie 的大小为 4kb。

  • 消耗性能 - 当前域下的所有 http 请求都会携带这些 Cookie 数据。

HTML5 的本地存储为每个网站分配的空间时 【5MB】

LocalStorage 和 SessionStorage 的区别
前者会一直存储在本地,直到手动清除;
后者则存活在当前页面的生命周期中,一旦页面关闭,存储的数据也会消失。

相关文章推荐:

link标签链接CSS和@import加载有什么区别?

html5 canvas用来绘制弧形的代码实现

Html5中postmessage实现子父窗口传值的代码

以上是HTML5应用:离线的应用以及存储的应用的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用视口元标记来控制移动设备上的页面缩放? 如何使用视口元标记来控制移动设备上的页面缩放? Mar 13, 2025 pm 08:00 PM

本文讨论了使用视口元标记来控制移动设备上的页面缩放,重点是宽度和初始尺度之类的设置,以获得最佳响应和性能。

如何将音频添加到我的HTML5网站上? 如何将音频添加到我的HTML5网站上? Mar 10, 2025 pm 03:01 PM

本文解释了如何使用&lt; audio&gt;元素,包括用于格式选择的最佳实践(MP3,OGG Vorbis),文件优化和JavaScript控件用于播放。 它强调使用多个音频f

如何使用地理位置API处理用户位置隐私和权限? 如何使用地理位置API处理用户位置隐私和权限? Mar 18, 2025 pm 02:16 PM

本文讨论了使用GeOlocation API管理用户位置隐私和权限,并强调要求权限,确保数据安全性并遵守隐私法律的最佳实践。

如何将HTML5表单用于用户输入? 如何将HTML5表单用于用户输入? Mar 10, 2025 pm 02:59 PM

本文解释了如何创建和验证HTML5表格。 它详细介绍了&gt;元素,输入类型(文本,电子邮件,编号等)和属性(必需,模式,最小,最大)。 HTML5的优势比旧方法形成

如何使用HTML5页面可见性API检测页面何时可见? 如何使用HTML5页面可见性API检测页面何时可见? Mar 13, 2025 pm 07:51 PM

本文讨论了使用HTML5页面可见性API来检测页面可见性,提高用户体验并优化资源使用情况。关键方面包括暂停媒体,减少CPU负载以及基于可见性变化管理分析。

如何使用HTML5和JavaScript创建互动游戏? 如何使用HTML5和JavaScript创建互动游戏? Mar 10, 2025 pm 06:34 PM

本文使用JavaScript详细介绍了创建Interactive HTML5游戏。 它涵盖了游戏设计,HTML结构,CSS样式,JavaScript逻辑(包括事件处理和动画)以及音频集成。 必需的JavaScript库(Phaser,Pi

如何将HTML5拖放API用于交互式用户界面? 如何将HTML5拖放API用于交互式用户界面? Mar 18, 2025 pm 02:17 PM

本文介绍了如何使用HTML5拖放API来创建交互式用户界面,详细介绍了使元素可拖动的步骤,处理关键事件并通过自定义反馈来增强用户体验。它还讨论了一个常见的陷阱

如何使用HTML5 Websockets API进行客户端和服务器之间的双向通信? 如何使用HTML5 Websockets API进行客户端和服务器之间的双向通信? Mar 12, 2025 pm 03:20 PM

本文解释了HTML5 Websockets API,用于实时双向客户服务器通信。 它详细详细介绍了客户端(JavaScript)和服务器端(Python/Flask)的实现,以应对可伸缩性,状态管理,一个挑战

See all articles