首页 > web前端 > H5教程 > 正文

HTML5能为我们带来什么? 面试必备!

黄舟
发布: 2017-02-16 14:45:24
原创
1463 人浏览过


说起HTML5,表面上是说它是HTML更新的第五个版本,而实际上,HTML5有很多内在的东西。正是因为HTML5的出现,使得web应用的开发变得更加方便快捷,更加标准化,提高了web应用的性能。可以说HTML5是web应用现在能够被广泛接受。
首先我们来看一下HTML5给我们带来了哪些新功能。

1、本地缓存

本地存储Web storage的作用是在网站中把有用的信息存储到本地的计算机或移动设备上,然后根据实际需要从本地读取信息。它提供两种存储类型API接口,分别是sessionStoragelocalhostStorage,其中前者在会话期间内有效,后者就存储在本地,并且存储是永久的,但是两个的API使用基本上是相同的。
利用HTML5的本地存储功能,我们可以进行用户信息的保存(类似于HTML4中的cookie)、数据存储与读取等诸多功能。注意Web Storage官方建议每个网站的本地缓存大小为5MB,这相比于HTML4中cookie的几kb要大得多,功能也更强大。
接下来利用代码来具体解释一下Web Storage的使用方式,以localStorage为例,js代码如下:

window.onload = function(){localStorage.clear();//清除之前localStorage存储的全部数据localStorage.setItem(“userData”,”storage demo”)//setItem方法可以设定缓存数据的值,采用键值对的形式}
登录后复制
登录后复制

除了基本操作,还可以对Storage事件进行监听:

window.onload = function(){window.addEventListener(“storage”,function(e){console.log(e);
},true);
}
登录后复制
登录后复制

2、离线缓存

离线缓存可以在即使没有网络的状态下web应用仍能正常运行,非常有实用价值。HTML5的离线缓存功能为web应用(尤其是移动应用)的开发建立了良好的条件。

开始使用离线缓存功能很简单,只要在html标签中加入mainfest属性,并指定mainfest文件即可。mainfest文件的作用是告诉浏览器哪些文件需要进行离线缓存操作。举例说明.mainfest文件的应用:

CACHE MAINFEST
index.html
test.js
NETWORK
/images/
登录后复制
登录后复制

这些内容就表明,index.htmltest.js这两个文件被定义为缓存文件,跟在CACHE MAINFEST后面。当网络不可用或不在线时,此部分文件会通过本地缓存直接读取。NETWORK后面的文件定义为无论这些文件是否已经被缓存,都必须从网络中下载。
除此之外,还要对.mainfest文件进行必要的配置,在web.xml中

<mime-mapping>//.mainfest文件是MIME类型文件<extension>mainfest</extension><mime-type>text/cache-mainfest<mime-type></mime-mapping>
登录后复制
登录后复制

有了HTML5离线缓存技术,就可以使网站或者web开发的应用在无网络的情况下也可以进行访问,大大减少了网络消耗,也让利用web开发出来的app性能大幅提升了。

3、新型标签

①布局语义化标签
HTML5新增了许多语义化的布局标签,用以代替之前每个布局都要使用p的无语义性的混乱局面。HTML5提供的新标签包括<head><footer><aside><article>等,基本一个页面的每个布局部分,都有一个对应的标签。
HTML5语义化标签的主要作用主要体现在以下三个方面:
◎对移动端设备更加友好
◎使用语义化的布局标签更有利于搜索引擎的的抓取
◎语义化标签简洁,便于软件的维护和二次开发
使用语义化标签,更加符合现在的web标准。

②其他标签
HTML5增加了许多新功能,这些功能有的对应标签。
多媒体标签。比如标签可以支持视频播放功能,使用HTML5的video标签配合一些web视频播放器制作插件可以制作出效果很好的网页播放器。这里推荐video.js,比较美观,性能较好,且学习成本比较低。
画布,将在后面进行详细介绍。
表单相关的新标签,将在后面进行详细介绍。

4、 Geolocation地理定位

目前,地理定位基本上是每个移动app都支持的功能。而HTML5也开始支持地理定位功能,这给利用HTML5开发移动app提供了极大帮助。
Geolocation的使用方法很简单,主要有三个方法:
getCurrentPosition():获取当前用户的地理位置信息
watchPosition():定期轮询设备的位置
clearWatch():用于停止watchPosition()的轮询
目前大部分浏览器都支持Geolocation API。

6、增强的表单

表单一直都是一个web不可缺少的部分。HTML5中提供了非常丰富的表单标签和属性。首先我们来了解几个HTML5为表单控件新添加的标签。
<meter>/<progress>:用于设置进度条,配合js即可方便的搭建出一个动态进度条。
<details>+<summary>:零js即可创建折叠内容,结构如下:

<details><summary>This is the summary</summary>This contains detail things.<details>
登录后复制
登录后复制

除了新的标签,input标签还增加了许多类型(type),包括search/email/number/type/range/url等。
表单标签的新增属性有placeholder/autofocus/list/autocomplete等。
HTML5极大地丰富了表单内容,让编写代码变得更加简单,实现功能更加快捷。

7、强大的canvas

个人认为canvas是HTML5中最强大的功能,有了canvas,HTML5在图像这方面变得无所不能(有关canvas的具体实例请见其他博客)。

canvas可以进行切图、画图、图像的像素级操作等一系列功能,十分强大。说起canvas,应用最多的应该是基于HTML5的游戏。利用HTML5的canvas功能,配合js,可以开发出各种各样的游戏。同时,像素级的操作也让HTML5 canvas可以处理许多细致的图像问题。
创建一个canvas画布很容易,在html中使用<canvas>标签,js代码如下:

var canvas = document.getElementById(canvas1);var context = canvas.getContext(“2d”);
登录后复制
登录后复制

canvas可以创建丰富的图形,包括基本图形、函数曲线等。

综上,HTML5提供的新功能,使HTML5在移动应用开发、游戏开发、规范开发等方面,都有了质的飞跃。深入学习HTML5,十分必要。

说起HTML5,表面上是说它是HTML更新的第五个版本,而实际上,HTML5有很多内在的东西。正是因为HTML5的出现,使得web应用的开发变得更加方便快捷,更加标准化,提高了web应用的性能。可以说HTML5是web应用现在能够被广泛接受。
首先我们来看一下HTML5给我们带来了哪些新功能。

1、本地缓存

本地存储Web storage的作用是在网站中把有用的信息存储到本地的计算机或移动设备上,然后根据实际需要从本地读取信息。它提供两种存储类型API接口,分别是sessionStoragelocalhostStorage,其中前者在会话期间内有效,后者就存储在本地,并且存储是永久的,但是两个的API使用基本上是相同的。
利用HTML5的本地存储功能,我们可以进行用户信息的保存(类似于HTML4中的cookie)、数据存储与读取等诸多功能。注意Web Storage官方建议每个网站的本地缓存大小为5MB,这相比于HTML4中cookie的几kb要大得多,功能也更强大。
接下来利用代码来具体解释一下Web Storage的使用方式,以localStorage为例,js代码如下:

window.onload = function(){localStorage.clear();//清除之前localStorage存储的全部数据localStorage.setItem(“userData”,”storage demo”)//setItem方法可以设定缓存数据的值,采用键值对的形式}
登录后复制
登录后复制

除了基本操作,还可以对Storage事件进行监听:

window.onload = function(){window.addEventListener(“storage”,function(e){console.log(e);
},true);
}
登录后复制
登录后复制

2、离线缓存

离线缓存可以在即使没有网络的状态下web应用仍能正常运行,非常有实用价值。HTML5的离线缓存功能为web应用(尤其是移动应用)的开发建立了良好的条件。

开始使用离线缓存功能很简单,只要在html标签中加入mainfest属性,并指定mainfest文件即可。mainfest文件的作用是告诉浏览器哪些文件需要进行离线缓存操作。举例说明.mainfest文件的应用:

CACHE MAINFEST
index.html
test.js
NETWORK
/images/
登录后复制
登录后复制

这些内容就表明,index.htmltest.js这两个文件被定义为缓存文件,跟在CACHE MAINFEST后面。当网络不可用或不在线时,此部分文件会通过本地缓存直接读取。NETWORK后面的文件定义为无论这些文件是否已经被缓存,都必须从网络中下载。
除此之外,还要对.mainfest文件进行必要的配置,在web.xml中

<mime-mapping>//.mainfest文件是MIME类型文件<extension>mainfest</extension><mime-type>text/cache-mainfest<mime-type></mime-mapping>
登录后复制
登录后复制

有了HTML5离线缓存技术,就可以使网站或者web开发的应用在无网络的情况下也可以进行访问,大大减少了网络消耗,也让利用web开发出来的app性能大幅提升了。

3、新型标签

①布局语义化标签
HTML5新增了许多语义化的布局标签,用以代替之前每个布局都要使用p的无语义性的混乱局面。HTML5提供的新标签包括<head><footer><aside><article>等,基本一个页面的每个布局部分,都有一个对应的标签。
HTML5语义化标签的主要作用主要体现在以下三个方面:
◎对移动端设备更加友好
◎使用语义化的布局标签更有利于搜索引擎的的抓取
◎语义化标签简洁,便于软件的维护和二次开发
使用语义化标签,更加符合现在的web标准。

②其他标签
HTML5增加了许多新功能,这些功能有的对应标签。
多媒体标签。比如标签可以支持视频播放功能,使用HTML5的video标签配合一些web视频播放器制作插件可以制作出效果很好的网页播放器。这里推荐video.js,比较美观,性能较好,且学习成本比较低。
画布,将在后面进行详细介绍。
表单相关的新标签,将在后面进行详细介绍。

4、 Geolocation地理定位

目前,地理定位基本上是每个移动app都支持的功能。而HTML5也开始支持地理定位功能,这给利用HTML5开发移动app提供了极大帮助。
Geolocation的使用方法很简单,主要有三个方法:
getCurrentPosition():获取当前用户的地理位置信息
watchPosition():定期轮询设备的位置
clearWatch():用于停止watchPosition()的轮询
目前大部分浏览器都支持Geolocation API。

6、增强的表单

表单一直都是一个web不可缺少的部分。HTML5中提供了非常丰富的表单标签和属性。首先我们来了解几个HTML5为表单控件新添加的标签。
<meter>/<progress>:用于设置进度条,配合js即可方便的搭建出一个动态进度条。
<details>+<summary>:零js即可创建折叠内容,结构如下:

<details><summary>This is the summary</summary>This contains detail things.<details>
登录后复制
登录后复制

除了新的标签,input标签还增加了许多类型(type),包括search/email/number/type/range/url等。
表单标签的新增属性有placeholder/autofocus/list/autocomplete等。
HTML5极大地丰富了表单内容,让编写代码变得更加简单,实现功能更加快捷。

7、强大的canvas

个人认为canvas是HTML5中最强大的功能,有了canvas,HTML5在图像这方面变得无所不能(有关canvas的具体实例请见其他博客)。

canvas可以进行切图、画图、图像的像素级操作等一系列功能,十分强大。说起canvas,应用最多的应该是基于HTML5的游戏。利用HTML5的canvas功能,配合js,可以开发出各种各样的游戏。同时,像素级的操作也让HTML5 canvas可以处理许多细致的图像问题。
创建一个canvas画布很容易,在html中使用<canvas>标签,js代码如下:

var canvas = document.getElementById(canvas1);var context = canvas.getContext(“2d”);
登录后复制
登录后复制

canvas可以创建丰富的图形,包括基本图形、函数曲线等。

综上,HTML5提供的新功能,使HTML5在移动应用开发、游戏开发、规范开发等方面,都有了质的飞跃。深入学习HTML5,十分必要。

 以上就是HTML5能为我们带来什么? 面试必备!的内容,更多相关内容请关注PHP中文网(www.php.cn)!


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板