html5学习笔记
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作为下一代的网页语言,HTML5 拥有很多让人期待已久的新特性,它可以说是近十年来 Web 标准最巨大的飞跃。
使用HTML5后,原来需要开发人员写很多代码才能够实现的交互效果和展现形式,可以方便的满足用户体验和可用性。
在HTML 5未成熟应用的时候,流媒体播放等一些精彩应用必须借助第三方软件才可以实现,比如Flash等。但是现在HTML 5已经将其超过,它不但可以播放视频和音频,直接展示数据图表,而且还可以开发出各种网络在线应用程序,如标识的地理位置、离线存储、拖放、图片处理等。
HTML5 中的一些有趣的新特性:
用于绘画的 canvas 元素
用于媒介回放的 video 和 audio 元素
对本地离线存储的更好的支持
新的特殊内容元素,比如 article、footer、header、nav、section
新的表单控件,比如 calendar、date、time、email、url、search
浏览器支持
最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。
Canvas
HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像。
画布是一个矩形区域,您可以控制其每一像素。
canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
在客户端存储数据
HTML5 提供了两种在客户端存储数据的新方法:
localStorage - 没有时间限制的数据存储
sessionStorage - 针对一个 session 的数据存储
之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高。
在 HTML5 中,数据不是由每个服务器请求传递的,而是只有在请求时使用数据。它使在不影响网站性能的情况下存储大量数据成为可能。
对于不同的网站,数据存储于不同的区域,并且一个网站只能访问其自身的数据。
HTML5 使用 JavaScript 来存储和访问数据。
对简单的关键值对(比如应用程序设置)或简单对象(如应用程序状态)进行存储,使用本地和会话存储能够很好地完成,但是在对琐碎的关系数据进行处理之外,它就力所不及了。而这正是 HTML 5 的“Web SQL Database”API 接口的应用所在。需要注意的是,如果不是绝对需要的情况,不要使用 Web SQL Database。这不是因为它们的技术高高在上,而是因为它们会让你的代码更加复杂。对于大多数情况,本地存储或会话存储就能够完成相应的任务,尤其是你能够保持对象状态持久化的情况。
HTML5 新的 Input 类型
HTML5 拥有多个新的表单输入类型。这些新特性提供了更好的输入控制和验证。
Date pickers (date, month, week, time, datetime, datetime-local)可供选取
日期和时间的新输入类型
email 类型用于应该包含 e-mail 地址的输入域。
url 类型用于应该包含 URL 地址的输入域。
number 类型用于应该包含数值的输入域。
range 类型用于应该包含一定范围内数字值的输入域。
search 类型用于搜索域,比如站点搜索或 Google 搜索。
datalist 元素规定输入域的选项列表。
keygen 元素的作用是提供一种验证用户的可靠方法。
output 元素用于不同类型的输出,比如计算或脚本输出:
form属性:
autocomplete 属性规定 form 或 input 域应该拥有自动完成功能。
autofocus 属性规定在页面加载时,域自动地获得焦点。
form 属性规定输入域所属的一个或多个表单。
新的 input 属性:
autocomplete
autofocus
form
form overrides (formaction, formenctype, formmethod, formnovalidate, formtarget)
height 和 width
list
min, max 和 step
multiple
pattern (regexp)
placeholder
required
通过一个单一的Socket实现一个全双工,双向通信的信道。HTML 5 Web Socket提供了一个真正的标准,你可以使用它构建可扩展的实时Web应用程序。此外,由于它提供了一个浏览器自带的套接字,消除了Comet解决方案的许多问题,Web Socket显著降低了系统开销和复杂性。
HTML5 File API可以改善基于浏览器的Web应用程序处理文件上传的方式,使文件可以直接拖放上传。我们可以通过﹤input type=”file”﹥ 标签来实现。