<big><b>Web上的視頻</b></big>
直到現(xiàn)在闯捎,仍然不存在一項旨在網(wǎng)頁上顯示視頻的標(biāo)準(zhǔn)。<br />
今天咆瘟,大多數(shù)的視頻都是通過插件(例如flash)來顯示的。然而诽里,并非所有的瀏覽器都有同樣的插件袒餐。
HTML5通過<b><i>video</i></b>元素來包含視頻的標(biāo)準(zhǔn)方法。
當(dāng)前video元素支持三種視頻格式:
<a name="tips1"></a>
- 視頻格式(^下表可能在豎屏手機(jī)中適配有問題 )
|格式|IE|FireFox|Opera|Chrome|Safari
|---|---|---|---|---|---|---|
|Ogg|No|3.5+|10.5+|5.0+|No|
|MPEG 4|9.0+|No|No|5.0+|3.0+|
|WebM|No|4.0+|10.6+|6.0+|No|
Ogg = 帶有 Theora 視頻編碼和 Vorbis 音頻編碼的 Ogg 文件
MPEG4 = 帶有 H.264 視頻編碼和 AAC 音頻編碼的 MPEG 4 文件
WebM = 帶有 VP8 視頻編碼和 Vorbis 音頻編碼的 WebM 文件
-
如何工作
如果需要在HTML5中顯示視頻谤狡,需要一下代碼
<video src="movie.mp4" controls="controls">
</video>
<!--controls屬性提供播放灸眼、暫停和音量控件。
也可以添加上寬width和高h(yuǎn)eight等屬性豌汇,
<video>和</video>之間添加的內(nèi)容是供不支持video元素的瀏覽器顯示的
-->
例子:
<video src="movie.ogg" width="320" height="240" controls="controls">
Your browser does not support the video tag.
</video>
要確保safari瀏覽器能夠播放幢炸,視頻文件需要是MP4文件格式
video 元素允許多個 source 元素。source 元素可以鏈接不同的視頻文件拒贱。瀏覽器將使用第一個可識別的格式.
例子:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Video</title>
</head>
<body>
<video width="400" height="320" controls="controls">
//適配兼容性
<source src="http://120.25.251.44/best_upload/2015/09/201509201341461407893862.mp4" type="video/ogg"></source>
//加載MP4文件路徑
<source src="http://120.25.251.44/best_upload/2015/09/201509201341461407893862.mp4" type="video/mp4"></source>
</video>
</body>
</html>
Internet Explorer 8 不支持 video 元素宛徊。在 IE 9 中佛嬉,將提供對使用 MPEG4 的 video 元素的支持。
<a name="tips3"></a>
- <video>標(biāo)簽的屬性(^下表可能在豎屏手機(jī)中適配有問題 )
屬性 | 值 | 描述 |
---|---|---|
autoplay | autoplay | 如果出現(xiàn)該屬性闸天,則在視頻就緒后就開始播放 |
controls | controls | 如果出現(xiàn)該屬性暖呕,則向用戶展示控件,例如播放按鈕 |
height | px | 設(shè)置視頻播放器的高度 |
loop | loop | 如果出現(xiàn)該屬性苞氮,則在視頻播放結(jié)束后再次開始播放該視頻 |
preload | preload | 如果出現(xiàn)該屬性湾揽,則在視頻頁面加載時進(jìn)行加載,并預(yù)備播放笼吟。如果使用了autoplay库物,則忽略該屬性 |
src | url | 要播放視頻的url |
width | px | 設(shè)置視頻播放器的寬度 |
-
Video + DOM
HTML5 <video>元素使用DOM進(jìn)行控制,<video>元素同樣擁有方法贷帮、屬性和事件戚揭。
其中的方法用于播放、暫停和加載等事件撵枢。其中的屬性(時長民晒、音量)可以被讀取和設(shè)置。其中DOM事件能夠通知您锄禽,比方說潜必,<video>元素開始播放、已暫停沃但、已停止等等磁滚。
例子:
<!DOCTYPE html>
<html>
<body>
<div style="text-align:center;">
<button onclick="playPause()">播放/暫停</button>
<button onclick="makeBig()">大</button>
<button onclick="makeNormal()">中</button>
<button onclick="makeSmall()">小</button>
<br />
<video id="video1" width="420" style="margin-top:15px;">
<source src="http://www.w3school.com.cn/example/html5/mov_bbb.mp4" type="video/mp4" />
<source src="http://www.w3school.com.cn//example/html5/mov_bbb.ogg" type="video/ogg" />
Your browser does not support HTML5 video.
</video>
</div>
<script type="text/javascript">
var myVideo=document.getElementById("video1");
function playPause()
{
if (myVideo.paused)
myVideo.play();
else
myVideo.pause();
}
function makeBig()
{
myVideo.width=560;
}
function makeSmall()
{
myVideo.width=320;
}
function makeNormal()
{
myVideo.width=420;
}
</script>
</body>
</html>
代碼演示頁面:[Click me](http://www.w3school.com.cn/tiy/t.asp?f=html5_video_dom)
上面的例子調(diào)用了兩個方法:play() 和 pause()。它同時使用了兩個屬性:paused 和 width绽慈。
* **HTML5 <video>的方法恨旱、屬性以及事件**
下面列出了大多數(shù)瀏覽器支持的視頻方法、屬性和事件:
![1.png](http://upload-images.jianshu.io/upload_images/627491-b2002903c8883e00.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
**注意:**在這些屬性中坝疼,只有videoWidth 和 videoHeight是可以直接使用的搜贤,其他的屬性,都需要視頻元數(shù)據(jù)加載后才可以使用钝凶。
<br /><br /><br />
<small>—謝謝W3C提供的學(xué)習(xí)資源</small>