html5新增的特性:1、語意化標籤(header、footer、nav等);2、webStorage儲存機制;3、history物件;4、表單類型(email、tell、date等); 5、媒體元素video和audio;6、canvas。
本教學操作環境:windows7系統、HTML5版、Dell G3電腦。
HTML5 是下一代的 HTML, 將成為 HTML、XHTML 以及 HTML DOM 的新標準。
HTML5 是 W3C
與 WHATWG
合作的結果。
為 HTML5 建立的一些規則:
最新版本的Chrome、Firefox、Safari以及Opera 支援某些HTML5 特性。 Internet Explorer 9 將支援某些 HTML5 特性。國內的遨遊瀏覽器(Maxthon),以及基於IE或Chromium(Chrome的工程版或稱實驗版)所推出的360瀏覽器、搜狗瀏覽器、QQ瀏覽器、獵豹瀏覽器等國產瀏覽器同樣具備支援HTML5的能力。
HTML5 中新增的一些有趣的新功能:
1、語意化標籤
header<span style="font-family:Microsoft Yahei, Hiragino Sans GB, Helvetica, Helvetica Neue, 微软雅黑, Tahoma, Arial, sans-serif"> </span>
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有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 的生命週期是在瀏覽器關閉前。也就是說,在整個瀏覽器未關閉前,其資料一直都是存在的。 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、表單元素的升級
#传统的表单元素:form、laber、textarea、select、button...
input(text、password、radio、checkbox、file、submit、reset、button)
Html5给input新增加一些类型(search、email、number、tell、range、color、date)
升级:给表单元素新增加属性placeholder(给表单元素设置提示信息)
升级:提供了新的下拉框方式
5、多媒体
用于回放的 video 和 audio 元素
6、用于绘画的 canvas
5ba626b379994d53f7acf72a64f9b697定义图形,绘制路径,矩形,圆形,字符以及添加图像的方法 。
首先创建canvas元素,并规定元素的id、宽度和高度撒的:
65bf494c1b23a47c81fdf73594820646c2caaf3fc160dd2513ce82f021917f8b
然后通过javas来绘制。Canvas元素本身没有绘图能力,所有的绘制工作必须在javascript内部完成渐变。
5cd6e472395e766622bc5d31b556eb7a
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
2cacc6d41bbb37262a98f745aa00fbf0
JavaScript 使用 id 来寻找 canvas 元素:
var c=document.getElementById("myCanvas");
然后,创建 context 对象:
var cxt=c.getContext("2d");
getContext("2d") 对象是内建的 HTML5 对象,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
下面的两行代码绘制一个红色的矩形:
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
fillStyle 方法将其染成红色,fillRect 方法规定了形状、位置和尺寸。
下面的两行代码绘制一条直线:
cxt.moveTo(100,100);
cxt.lineTo(200,200);
下面的一行代码是画一个圆:
cxt.arc(70,18,15,0,Math.PI*2,false);
这些属性值分别对应的是什么,70,18分别是X轴和Y轴,15是这个圆的半径,0是角度,Math.PI*2是圆周率,false代表顺时针而true是逆时针。
颜色的渐变效果也是可以实现的:
<script type="text/javascript"> var c=document.getElementById("myCanvas"); var cxt=c.getContext("2d"); var grd=cxt.createLinearGradient(0,0,175,50); grd.addColorStop(0,"#FF0000"); grd.addColorStop(1,"#00FF00"); cxt.fillStyle=grd; cxt.fillRect(0,0,175,50); </script>
还有一些其他效果:
曲线quadraticCurreTo
字体fillText
推荐教程:《html视频教程》
以上是html5新增了什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!