HTML5 Video(影片)

Video標籤介紹

大多數用戶已經安裝了Flash外掛(事實上,大概有95%的上網用戶都裝有Flash的某個版本),但HTML 5的支持者正在推動一個開放的,不需要任何插件的視訊標準。這就是HTML 5的新標籤<video>帶來的構想,他提供了一個嵌入視訊(以及與其互動)而不需要類似Flash的私有插件的方法。

直到現在,仍然不存在一項旨在網頁上顯示影片的標準。

瀏覽器支援情況

Internet Explorer 9+, Firefox, Opera, Chrome, 和Safari 支援<video> 元素.

注意: Internet Explorer 8 或更早的IE版本不支援<video> 元素。

Video標籤的使用

Video標籤含有src、poster、preload、autoplay、loop、controls、width、height等幾個屬性,以及一個內部使用的標籤<source>。 Video標籤內除了可以包含<source>標籤外,還可以包含當指定的影片都不能播放時,傳回的內容。

(1) src屬性和poster屬性

你能想像src屬性是用來幹啥的。跟<img>標籤的一樣,這個屬性用來指定影片的位址。而poster屬性用於指定一張圖片,在目前影片資料無效時顯示(預覽圖)。視訊資料無效可能是視訊正在加載,可能是視訊地址錯誤等等。


(2) preload屬性

這個屬性也能透過名字了解用處,此屬性用於定義影片是否預先載入。屬性有三個可選擇的值:none、metadata、auto。如果不使用此屬性,預設為auto。


None:不進行預先載入。使用此屬性值,可能是頁面製作者認為用戶不期望此視頻,或減少HTTP請求。

Metadata:部分預先載入。使用此屬性值,代表頁面製作者認為用戶不期望此視頻,但為用戶提供一些元數據(包括尺寸,第一幀,曲目列表,持續時間等等)。

Auto:全部預先載入。

(3) autoplay屬性

又是一個看名字知道用處的屬性。 Autoplay屬性用於設定影片是否自動播放,是一個布林屬性。當出現時,表示自動播放,去掉是表示不自動播放。


注意,HTML中布林屬性的值不是true和false。正確的用法是,在標籤中使用此屬性表示true,此時屬性要么沒有值,要么其值恆等於他的名字(此處,自動播放為<video autoplay />或者<video autoplay=” autoplay” />);而在標籤中不使用此屬性表示false(此處不進行自動播放為<video />)。

 (4) loop屬性


#

一目了然,loop屬性用來指定影片是否循環播放,同樣是一個布林屬性。

(5) controls屬性

Controls屬性用於向瀏覽器指明頁面製作者沒有使用腳本產生播放控制器,需要瀏覽器啟用本身的播放控制欄。


控制列須包含播放暫停控制,播放進度控制,音量控制等等。

每個瀏覽器預設的播放控制列在介面上不一樣。由於我瀏覽器的詭異問題,Firefox和Safari的Video標籤不正常,所以這兩個只能在網路上找截圖了。

(6) width屬性和height屬性

屬於標籤的通用屬性了,這個不用多說。

影片格式與瀏覽器的支援

目前, <video> 元素支援三種影片格式: MP4, WebM, 和Ogg:


瀏覽器                    MP4               #  YES                  NO                 NO    #Chrome                   YES                 YES                 YES    

Firefox                     YES                 YES                YES    


Safari                      YES                  NO                 NO    

Opera        YES (從Opera 25 起)    YES                 YES    

MP4 = 帶有H.264 視訊編碼和AAC 音訊編碼的MPEG 4 檔案

WebM = 帶有VP8 視訊編碼和Vorbis 音訊編碼的WebM 檔案

Ogg = 帶有Theora 視訊編碼和Vorbis 音訊編碼的Ogg 檔案

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>php中文网(php.cn)</title> 
</head>
<body> 
<div style="text-align:center"> 
  <button onclick="playPause()">播放/暂停</button> 
  <button onclick="makeBig()">放大</button>
  <button onclick="makeSmall()">缩小</button>
  <button onclick="makeNormal()">普通</button>
  <br> 
  <video id="video1" width="420">
    <source src="mov_bbb.mp4" type="video/mp4">
    <source src="http://www.w3school.com.cn/example/html5/mov_bbb.ogg" type="video/ogg">
    您的浏览器不支持 HTML5 video 标签。
  </video>
</div> 
<script> 
var myVideo=document.getElementById("video1"); 
function playPause()
{ 
if (myVideo.paused) 
 myVideo.play(); 
else 
 myVideo.pause(); 
} 
function makeBig()
{ 
myVideo.width=600; 
} 
function makeSmall()
{ 
myVideo.width=320; 
} 
function makeNormal()
{ 
myVideo.width=420; 
} 
</script> 
</body> 
</html>

#

繼續學習
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>HTML5视频播放功能</title> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script> $(document).ready(function(){ var video = $('#myvideo'); $("#play").click(function(){ video[0].play(); }); $("#pause").click(function(){ video[0].pause(); }); $("#go10").click(function(){ video[0].currentTime+=10; }); $("#back10").click(function(){ video[0].currentTime-=10; }); $("#rate1").click(function(){ video[0].playbackRate+=2; }); $("#rate0").click(function(){ video[0].playbackRate-=2; }); $("#volume1").click(function(){ video[0].volume+=0.1; }); $("#volume0").click(function(){ video[0].volume-=0.1; }); $("#muted1").click(function(){ video[0].muted=true; }); $("#muted0").click(function(){ video[0].muted=false; }); $("#full").click(function(){ video[0].webkitEnterFullscreen(); // webkit类型的浏览器 video[0].mozRequestFullScreen(); // FireFox浏览器 }); }); </script> </head> <body> <video id="myvideo" width="400"> <source src="iceage4.mp4" type="video/mp4" /> <source src="iceage4.webm" type="video/webM" /> <source src="http://www.w3school.com.cn/example/html5/mov_bbb.ogg" type="video/ogg" /> 你的浏览器不支持html5 </video> <hr> <button id="play">播放</button> <button id="pause">暂停</button> <button id="go10">快进10秒</button> <button id="back10">快退10秒</button> <button id="rate1">播放速度+</button> <button id="rate0">播放速度-</button> <button id="volume1">声音+</button> <button id="volume0">声音-</button> <button id="muted1">静音</button> <button id="muted0">解除静音</button> <button id="full">全屏</button> </body> </html>