Web 存储规范提供了与 HTTP session cookies 相似的稳健的 Web 存储属性。他们是”sessionStorage” 和”localStorage”。
本地和 session 存储特性被如下浏览器所支持:IE8+, Firefox 3.5+, Safari 4.0+, Chrome 2.0+ and Opera 10.5+。
简单代码示例: 使用 localStorage 来创建页面计数器 (View Demo)
<p>You Have Viewed This Page <b> <script> if (!localStorage.pageCounter) localStorage.setItem('pageCounter',0); localStorage.setItem('pageCounter',parseInt(localStorage.pageCounter)+1); document.write(localStorage.pageCounter); </script> </b> Time(s).</p> <p><input value="Clear localStorage" type="button" /> <input value="Reload Page" type="button" /></p>你也可以把上面的代码中所有的 localStorage 的实例替换成 sessionStorage 来测试 sessionStorage。你的计数器将会在你关闭 Tab 或窗口前正常工作。如果你重起浏览器,计数器将会重新计数 (View Demo) 。
了解更多:
JavaScript 解决方案:
更多____除了已经讨论的内容外,还有更多你会想跟进了解的特性和相关的技术。这些是会帮助你研究的摘要列表:
网页版离线程序HTML5 规范还定义了当用户的网络被断开后如何让它们继续与网页程序和文档进行交互。这个特性现在被 Firefox 3.5+, Chrome 4.0+, Safari 4.0+ and Mobile Safari 3.1+ 所支持。
你可以通过提供一个 manifest 文件来定义哪些文件需要被缓存,哪些需要在离线的时候有折衷方案替代。当用户访问这个页面,支持的浏览器将会猎取一个 manifest 版本。它将下载并缓存所有的涉及到的文件,并且当 manifest 相对于用户上次的浏览的版本有变化,它将会再次下载并缓存所有的文件。
跨文档通讯新的还提供了”postMessage” 让我们可以向不同域的页面发送消息。这个特性在所有现代浏览器中被支持:IE8+, Firefox3+, Safari 4+, Chrome 2+ and Safari 9.6+。
我们在 Javascript 中最常见的事是选择 DOM 元素并动态地做一些事。我们大部分人在原生 Javascript 中使用 “getElementById” 来做这事。HTML5 规则已经添加了”” 方法,当我们要用 className 来访问元素的时候,这将会大大提升我们脚本的性能。 这个特性在除IE 外的其他现代浏览器都支持,有Firefox3+, Safari 3.2+, Chrome 2+ 和 Safari 9.6+。
官方规范文档:
相关技术官方规范文档:
额外的资源如果你还想要涉猎更多的知识,应该看看这些资源:
必要的书签WHATWG 的草案
WHATWG 官方博客 – 负责 HTML5 规范的团队
WHATWG 贡献者提交和编纂他们对 WHATWG 规范建议的地方
Mark Pilgrim 在 HTML5 规范中精心挑选的特性。现在正在进行中,最终将会由 O’Reilly 制作为纸质读物
在线 HTML5 文档检测工具
提供在线的规范选择和版本对比
注重于帮助你在今天实施 HTML5 的在线社区
一系列由 Remy Sharp 制作的 HTML5 实验
由 Marcin Wichary 开发,Ernest Delgado 修改。 这个报告展示了桌面和移动浏览器上的 HTML5 特性
一系列由 Robert Nyman 制作的 HTML5 演示和例子
收集使用 HTML5 标记网站的Gallery
一个为多种屏幕宽度提供灵活多栏布局,由驱动于 HTML5 的 CSS 框架
一个以让你在今天就能在项目上应用 HTML5 和 CSS3 的页面开发框架
一个由 Ruby gem 写的 JavaScript HTML5 应用程序框架。
Frame 是一个支持 Layout, Typography, Forms, Code, Table, Reset, 和 Print 标签样式化,并提供 HTML5 默认样式和元素支持的 CSS 框架
By Michael Galpin (IBM developerWorks – May 6th, 2010)
By Piervincenzo Madeo (PV.M Garage – April 23rd, 2010)
By Richard Clark (HTML5 Doctor – March 30th, 2010)
By Michael Galpin (IBM developerWorks – March 30th, 2010)
By Alex Kessinger (Six Revisions – March 26th, 2010)
By Mac Slocum (O’Reilly – March 15th, 2010)
By Shane Jeffers (Three Styles – March 11th, 2010)
By Joe Lennon (IBM developerWorks – March 2nd, 2010)
By Tom Kenny (Inspect Element – January 25th, 2010)
By Kevin Purdy (Lifehacker – December 1st, 2009)
By Enrique Ramirez (Smashing Magazine – August 4th, 2009)
By Jeff Starr (Perishable Press – July 19th, 2009)
By Bruce Lawson (SitePoint – July 1st, 2009)
By Elliotte Rusty Harold (IBM developerWorks – August 7th, 2007)
你可以下载打包了所有 Demo 的 ZIP 文件。注意:视频/音频并没有包含在下载中。
查看Demo | 下载演示文件
==========
文章后面的那句话就不翻啦,套话。对于个人来说,目前会逐渐接触更多的 HTML5 和 CSS3 相关的新技术,希望能在后续的学习和研究中有所收获,并能将其应用到产品中,以提升产品在功能、速度和视觉上的体验。
原文请看:HTML5 Unleashed: Tips, Tricks and Techniques。
本文来源于:幸福的收藏夹