跟KingDZ学HTML5之八 HTML5之Web Save

好了,今天有事崭新的一天啊,经过前面几个课程的学习,我想大伙应该差不多已经可以写一些HTML5的应用了,Canvas 的用途太多了,我以后和大家慢慢的谈论,呵呵

弄不好,开个专题,也可以。(*^__^*) 嘻嘻……。好了开始我们今天的课程吧。

大家都应该知道 Cookies 这个东东哦,但是太郁闷了,他只有 4K  ?  真的啊,呵呵,要是工资底薪还可以。。哈哈

这节课,俺说的这个和COOKIES 差不多。好了,废话不多说,我们讲课。

HTML5 提供了两种在客户端存储数据的新方法:

  • localStorage - 没有时间限制的数据存储
  • sessionStorage - 针对一个 session 的数据存储

之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高。

localStorage

目前 chrome,firefox,opera,safari, IE8 都支持此属性。还有一个很重要的一点,就是

各个浏览器分配给每个 localStorage 空间至少为 5M(具体数值请看稍后讨论),对于想开始使用 HTML5 的人们来说,这个是个不错的开始。哈哈,5M >>>> 4k 啊

我们先来一个测试,验证浏览器是否支持 localStorage

<! doctype html>
<html>
<head>
    <script type="text/javascript">
        function check() {
            if (window.localStorage) {
                alert("浏览器支持 localStorage");
            }
            else {
                alert("浏览器不支持 localStorage");
            }
        }
    </script>
</head>
<body>
    <canvas id="mycanvas" width="200" height="200">不支持此标签 KingDZ原创 http://www.cnblogs.com/hihell </canvas>
    <input type="button" value="验证" onclick="check();" />
    <body>
</html>

效果图---谷歌测试结果。

localStorage 使用方式非常简单

有 setItem, getItem, removeItem,key, clear 5个方法,和 length 一个属性。

好了,下面我们开始尝试一下吧。

localStorage 中都是以 key/value 的形式来存储数据的,存储的数据类型都是字符串。

如果需要其他类型,需要自行转换。我们可以使用 setItem 方法来存储数据。

也就是  localStorage.setItem(key,value);

    <script type="text/javascript">
        function check() {
            if (window.localStorage) {
                try {
                    localStorage.setItem("name", "祖国你好!");
                }
                catch (e) {
                    alert(e);
                }
            }
            else {
                alert("浏览器不支持 localStorage");
            }
            alert(localStorage.getItem("name"));
        }
    </script>

上面的这个例子就包括了我们常见的两种用法。

下面我们在介绍几个不同的用法,但是以上面的那两个为主

localStorage.key = "value";     ---------------------设置key为"value" 
localStorage["key"] = "value";        ------------------设置key为"value" 
localStorage.setItem("key","value");----------------设置key为"value" 
var value1 = localStorage["key"];-------------------获取key的值    
var value2 = localStorage.key;-------------------------获取key的值 
var value3 = localStorage.getItem("key");   ------------获取b的值

上面的方法是等效的。不过建议大家用   setItem 和 getItem

localStorage.removeItem("key");--------------------清除key的值

如果希望一次性清除所有的键值对,可以使用clear();

localStorage.clear();

当然  localStorage有一个 key() 方法,我只在这里提示一下,就是,不知道 key 是什么了,只能用 循环 得到  也就是  localStorage.key(i)  ------------其中  i  是下标。

好了下面是一个简单的页面 访问计数器。

<head>
    <script type="text/javascript">
        function check() {
            if (window.localStorage) {
                try {
                    if (localStorage.pagecount) {
                        localStorage.pagecount = Number(localStorage.pagecount) + 1;
                    }
                    else {
                        localStorage.pagecount = 1;
                    }
                    document.write("第" + localStorage.pagecount + "次访问");
                }
                catch (e) {
                    alert(e);
                }
            }
            else {
                alert("浏览器不支持 localStorage");
            }
        }
    </script>
</head>
<body >
     <canvas id="mycanvas" width="200" height="200">不支持此标签 KingDZ原创 http://www.cnblogs.com/hihell </canvas>
<body>

好了   完成了,大家测试一下吧,当然有各种各样的写法的。

下面我们说一下  sessionStorage   的简单用法

哈哈,其实废话了 ,他们的用法相同,区别在文章开始,就说了,

再写一个计数器  sessionStorage   版本的

    <script type="text/javascript">
        function check() {
            if (!sessionStorage.pageCounter)
                sessionStorage.setItem(‘pageCounter‘, 0);
                sessionStorage.setItem(‘pageCounter‘, parseInt(sessionStorage.pageCounter) + 1);
                document.write(sessionStorage.pageCounter);
        }
    </script>

好了,大家试一下啊,关闭浏览器,打开看真相。

呵呵,前者,木有时间限制,后者浏览器关闭,就结束了。所以记得及时清空前者啊。今天得课程结束喽。

时间: 2024-10-15 14:48:38

跟KingDZ学HTML5之八 HTML5之Web Save的相关文章

利用HTML5开发Android(4)---HTML5本地存储之Web Storage

Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Storage官方建议为每个网站5MB. Web Storage又分为两种: sessionStorage localStorage 从字面意思就可以很清楚的看出来,sessionStorage将数据保存在session中,浏览器关闭也就没了:而localStorage则一直将数据保存在客户端本地: 不管

Html5之高级-13 Web存储API (两个存储系统、sessionStorage、localStorage)

一.两个存储系统 两个存储系统 - 万维网最初的设想,是作为展示信息的一种方式.信息处理是后来才出现的,但是Web的实质并没有变---信息在服务器上处理,然后显示给用户.因为系统没有利用计算机资源,所以复杂操作都是在服务器上完成的 - 对于任何程序来说,能够实现数据存储是必备功能之一,并且在需要的时候能够提供数据.但在过去的Web用户端,没有能够支持数据存储的有效机制 - cookie曾用来在客户端存储少量信息,但受其性质所限,cookie只能存储一些短的字符串 - 在 HTML5中提供了 We

Html5之高级-14 Web Socket(概述、API、示例)

一.Web Socket 概述 Web Socket 简介 - Web Socket 是 HTML5 提供的在 Web应用程序中客户端与服务器端之间进行的非 HTTP 的通信机制 - Web Socket 实现了用 HTTP 不容易实现的服务器端的数据推送等智能通讯技术 Web Socket 的特点 - Web Socket 可以在服务器与客户端之间建立一个非 HTTP 的双向连接 - 这个连接时实时的,也是永久的 - 服务器端可以主动推送消息 - 服务器端不再需要轮询客户端的请求 - 服务器端

前端新技术:HTML5本地存储之Web Storage

Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Storage官方建议为每个网站5MB. Web Storage又分为两种: sessionStorage localStorage 从字面意思就可以很清楚的看出来,sessionStorage将数据保存在session中,浏览器关闭也就没了:而localStorage则一直将数据保存在客户端本地: 不管

使用HTML5构建下一代的Web Form

HTML语言作为如今编程最为广泛的语言,具有易用.快捷.多浏览平台兼容等特点,但是随着时代的进步,HTML的标准却停滞不前,这一次还在不断开发中的[color=#444444 !important]HTML5标准的更新可以说给这门标记语言带来了新的生命力.本文将着重讨论HTML5中的Web Forms 2.0, 即表单的部分.表单是网页中常见的控件(集).小到网站注册登录,大到一个企业的数据管理系统,都基本上有表单的身影.表单之所以如此重要,主要是因为它担负大量的用户和网页后台数据更新交互的任务

HTML5——对HTML5的认识

首先非常感谢李刚老师出的这本书<HTML5/CSS3/JavaScript讲义>,今天读了第一章节的内容,趁热打铁,总结一下. HTML5的时代已经到来,它对所有的前端开发人员来说是一种福音.HTML5致力于解决跨浏览器问题,可以部分取代JavaScript,HTML5致力于把浏览器变成一个前端执行程序环境,而不是简单地视图工具. 第一部分,了解HTML和XHTML HTML--Hyper Text Markup Language(超文本标记语言),它的发展史比较复杂,从1991年年底推出HT

【html5】html5本地简单存储

html5本地简单存储 HTML5 提供了四种在客户端存储数据的新方法,即 localStorage .sessionStorage.globalStorage.Web Sql Database. 前面三个适用于存储较少的数据,而Web Sql Database适用于存储大型的,复杂的数据,我习惯把前面的三个称之为小存储. 简单存储与cookie的区别 1.存储量大①web存储比cookie存储量更大,在数据量上可以达到5M,而cookie最多也就4KB,或者20个key/value对.2.安全

【html5】html5 本地存储

最近一直在学习 html5,为了后期的移动项目进行知识储备.html5 相对于 html4 新增加了一些有趣的标签.属性和方法,今天主要介绍下 html5 的本地存储. 在客户端存储数据 html5 提供了两种在客户端存储数据的新方法: localStorage - 没有时间限制的数据存储 sessionStorage - 针对 session 的数据存储,一旦窗口关闭就没有了 两个方法用法完全一样,下面就以 localStorage 为例. 为什么要用本地存储 早期我们都是使用 cookie

IT兄弟连 HTML5教程 HTML5的靠山 W3C、IETF是什么

无规矩不成方圆,软件开发当然不能例外.Web开发涉及的厂商和技术非常多,所以必须要有参考的标准,而且需要一系列的标准.Web程序都是通过浏览器来解析执行的,通过页面的展示内容与用户互动,所以Web标准不仅要求各个浏览器都要遵循,开发者一样要遵循相同的标准.而似乎和Web相关标准的制作组织机构很多,例如W3C.IETF.ECMA和  WHATWG等,哪些是我们需要了解的?需要掌握什么信息?都在本节详细介绍. W3C是什么 W3C创建于1994年,W3C是万维网(World Wide Web)联盟的