HTML5技术

HTML5 基础 - 彼岸时光(10)

字号+ 作者:H5之家 来源:H5之家 2016-03-08 17:00 我要评论( )

1 script 2 sessionStorage.username = '小红' ; 3 document.write('User name: ' + sessionStorage.username); 4 /script 通过代码对比可以看到,创建 sessionStorage 和 创建 localStorage 方法相同,即使用 key=

1 <script> 2 sessionStorage.username = '小红'; 3 document.write('User name: ' + sessionStorage.username); 4 </script>

  通过代码对比可以看到,创建 sessionStorage 和 创建 localStorage 方法相同,即使用 key='username' 和 value='小红' 创建一个 sessionStorage 键/值对。在访问时,直接访问 sessionStorage 键。

  下面的例子,对用户在当前 session 中访问页面的次数进行计数,并将字符串值转换为数字类型:

1 <script> 2 if(sessionStorage.F5count){ 3 sessionStorage.F5count = Number(sessionStorage.F5count) + 1; 4 } 5 else{ 6 sessionStorage.F5count = 1; 7 } 8 document.write("访问:" + sessionStorage.F5count + " time(s) this session."); 9 </script>

  在浏览器打开上面的例子,刷新页面会看到计数器在增长,但是,关闭浏览器再打开后,计数器会复位,被重置为 1 。

8、HTML5 应用程序缓存

  使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 Web 应用的离线版本。

  (1)、什么是应用程序缓存(Application Cache)?

  HTML5 引入了应用程序缓存,这意味着 Web 应用可进行缓存,并可在没有因特网连接时进行访问。

  应用程序缓存为应用带来三个优势:

    ①、离线浏览,用户可在应用离线时使用它们。

    ②、速度,已缓存资源加载得更快。

    ③、减少服务器负载,浏览器将只从服务器下载更新过或更改过的资源。

  IE10,Firefox,Chrome,Safari 和 Opera 都支持应用程序缓存。

  (2)、HTML5 Cache Manifest

  如需启用应用程序缓存,需要在文档的 <html> 标签中包含 manifest 属性:

Cache Manifest 基础

  每个指定了 manifest 的页面在用户对其访问时都会被缓存。如果未指定 manifest 属性,则页面不会被缓存,除非在 manifest 文件中直接指定了该页面。

  manifest 文件建议的文件扩展名是:".appcache"。

  注意:manifest 文件需要配置正确的 MIME-type,即 "text/cache-manifest"。必须在 Web 服务器上进行配置。

  (3)、Manifest 文件

  manifest 文件是简单的文本文件,它告知浏览器被缓存的内容,以及不缓存的内容。

  manifest 文件可分为三个部分:

    ①、CACHE MANIFEST - 在此标题下列出的文件将在首次下载后进行缓存。

    ②、NETWORK - 在此标题下列出的文件需要与服务器的连接,且不会被缓存。

    ③、FALLBACK - 在此标题下列出的文件规定当页面无法访问时的回退页面(比如 404 页面)。

  ①、CACHE MANIFEST

  第一行 CACHE MANIFEST 是必需的:

CACHE MANIFEST /style.css /logo.gif /main.js

  上面的 manifest 文件列出了三个资源:一个 CSS 文件,一个 GIF 图像,以及一个 JavaScript 文件。

  当 manifest 文件加载后,浏览器会从网站的根目录下载这三个文件。然后,无论用户何时与因特网断开连接,这些资源依然是可用的。

  ②、NETWORK 

  下面的 NETWORK 小节规定文件 "login.php" 永远不会被缓存,且离线时是不可用的:

NETWORK: login.php

  可以使用星号来指示所有其他其他资源/文件都需要因特网连接:

NETWORK: *

  ③、FALLBACK 

  下面的 FALLBACK 小节规定如果无法建立因特网连接,则用 "offline.html" 替代 /html5/ 目录中的所有文件:

FALLBACK: /html5/ /offline.html

  注意:第一个 URI 是资源,第二个是替补。

  (4)、更新缓存

  一旦应用被缓存,它就会保持缓存直到发生下列情况:

    ①、用户清空浏览器缓存。

    ②、manifest 文件被修改。

    ③、由程序来更新应用缓存。

  下面是一个完整的 Manifest 文件:

CACHE MANIFEST # 2016-01-01 v1.0.0 /style.css /logo.gif /main.js NETWORK: login.php FALLBACK: /html/ /offline.html

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • HTML5 进阶系列:拖放 API 实现拖放排序 - _林鑫

    HTML5 进阶系列:拖放 API 实现拖放排序 - _林鑫

    2017-05-02 11:02

  • vue全局配置----小白基础篇 - 星光笔

    vue全局配置----小白基础篇 - 星光笔

    2017-04-28 08:04

  • HTML5 进阶系列:indexedDB 数据库 - _林鑫

    HTML5 进阶系列:indexedDB 数据库 - _林鑫

    2017-04-27 14:02

  • HTML5 高级系列:web Storage - _林鑫

    HTML5 高级系列:web Storage - _林鑫

    2017-04-27 14:01

网友点评
d