Html5新增了哪些功能
介绍
html5 是下一代的 html, 将成为 html、xhtml 以及 html dom 的新标准。
起步
html5 是 w3c 与 whatwg 合作的结果。
为 html5 建立的一些规则:
- 新特性应该基于 html、css、dom 以及 javascript。
- 减少对外部插件的需求(比如 flash)
- 更优秀的错误处理
- 更多取代脚本的标记
- html5 应该独立于设备
- 开发进程应对公众透明
浏览器支持
最新版本的 chrome、firefox、safari以及 opera 支持某些 html5 特性。internet explorer 9 将支持某些 html5 特性。国内的 遨游浏览器(maxthon),以及基于ie或chromium(chrome的工程版或称实验版)所推出的360浏览器、搜狗浏览器、qq浏览器、猎豹 浏览器等国产浏览器同样具备支持html5的能力。
新特性
html5 中新增的一些有趣的新特性:
1、语义化标签 header footer nav aside section meau template article audio video canvas 等
2、webstorage 储存机制 sessionstorage 和 localstorage
- webstorage: 使用html5可以在本地存储用户的浏览数据。早些时候,本地存储使用的是 cookie。但是web 存储需要更加的安全与快速,这些数据不会被保存在服务器上,但是这些数据只用于用户请求网站数据上。它也可以存储大量的数据,而不影响网站的性能。数据以 键/值 对存在, web网页的数据只允许该网页访问使用。
web storage又分为两种: sessionstorage 和localstorage ,即这两个是storage的一个实例。从字面意思就可以很清楚的看出来,sessionstorage将数据保存在session中,浏览器关闭也就没了;而localstorage则一直将数据保存在客户端本地。其api提供的方法有以下几种:
setitem (key, value) —— 保存数据,以键值对的方式储存信息。 getitem (key) —— 获取数据,将键值传入,即可获取到对应的value值。 removeitem (key) —— 删除单个数据,根据键值移除对应的信息。 clear () —— 删除所有的数据 key (index) —— 获取某个索引的key
- localstorage:没有时间限制的数据存储
localstorage的生命周期是永久性的。假若使用localstorage存储数据,即使关闭浏览器,也不会让数据消失,除非主动的去删除数据,使用的方法如上所示。localstorage有length属性,可以查看其有多少条记录的数据。使用方法如下:
var storage = null; //判断浏览器是否支持localstorage if(window.localstorage){ storage.setitem("name", "rick"); //调用setitem方法,存储数据 alert(storage.getitem("name")); //调用getitem方法,弹框显示 name 为 rick storage.removeitem("name"); //调用removeitem方法,移除数据 alert(storage.getitem("name")); //调用getitem方法,弹框显示 name 为 null }
- sessionstorage:针对一个 session 的数据存储
sessionstorage 的生命周期是在浏览器关闭前。也就是说,在整个浏览器未关闭前,其数据一直都是存在的。sessionstorage也有length属性,其基本的判断和使用方法和localstorage的使用是一致的。需要注意的有以下几点:
(1) 页面刷新不会消除数据;
(2) 只有在当前页面打开的链接,才可以访sessionstorage的数据;
(3) 使用window.open打开页面和改变localtion.href方式都可以获取到sessionstorage内部的数据;
3、history 对象
history 对象保存着用户上网的历史记录,从窗口被打开的那一刻算起。
使用 go( ) 方法可以在用户的历史记录中任意跳转,可以向后,也可以向前。
这个方法接受一个参数,表示向后或向前跳转的页面数的一个整数值。
负数表示向后跳转(类似于单机浏览器的“后退”按钮)
正数表示向前跳转(类似于单机浏览器的“前进”按钮)
history.go(-1) // 后退一页 history.go(1) // 前进一页 history.go(2) // 前进两页
还可以给go()方法传递一个字符串参数,此时浏览器会跳转到历史记录中包含该字符串的第一个位置-----可能前进,也可能后退。具体看哪个位置最近。 如果历史记录中不包含该字符串,那么这个方法什么也不做
history.go('wrox.com') // 调到最近的 wrox.com 页面
也可以使用两个简写方法 back( ) 和 forward( ) 来代替 go( ) 。这两个方法都可以模仿浏览器的“后退”和“前进”按钮。
history.back() // 后退一页 history.forward() // 前进一页
4、新增的表单元素 input datalist datetime date month week time color number email address range tel url search 等
5、多媒体,用于回放的 video 和 audio 元素
6、用于绘画的 canvas
以上就是html5新增了哪些功能的详细内容,更多关于html5新功能的资料请关注其它相关文章!