很多站点都会使用到视频. HTML5 提供了展示视频的标准。
检测浏览器是否支持
<script>
function checkVideo() {
let support = "非常棒!你的浏览器支持HTML5 video标签!",
someSupport = "Meh. Some support.",
notSupport = "Sorry. No video support.",
vidTest = document.createElement("video"),
result;
if (!vidTest.canPlayType) {
result = notSupport;
} else {
let oggTest = vidTest.canPlayType('video/ogg; codecs="theora, vorbis"'),
h264Test = vidTest.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');
if (!oggTest) {
if (!h264Test) {
result = notSupport;
} else {
result = h264Test === "probably" ? support: someSupport;
}
} else {
result = oggTest === "probably" ? support: someSupport;
}
}
document.getElementById("checkVideoResult").innerHTML = result;
}
</script>
<div id="checkVideoResult"><button onclick="checkVideo()">video检测</button></div>
HTML5 (视频)播放器
如需在 HTML5 中显示视频,您所有需要的是:
<video width="320" height="240" controls>
<source src="movie.mp4" type="video/mp4">
<source src="movie.ogg" type="video/ogg">
您的浏览器不支持Video标签。
</video>
video
元素提供了 播放、暂停和音量控件来控制视频。
同时video
元素也提供了 width
和 height
属性控制视频的尺寸.如果设置的高度和宽度,所需的视频空间会在页面加载时保留。如果没有设置这些属性,浏览器不知道大小的视频,浏览器就不能再加载时保留特定的空间,页面就会根据原始视频的大小而改变。
video
标签之间插入的内容是提供给不支持 video 元素的浏览器显示的。
video
元素支持多个 source
元素. source
元素可以链接不同的视频文件。浏览器将使用第一个可识别的格式:
多视频格式兼容支持
当前, <video> 元素支持三种视频格式: MP4, WebM, 和 Ogg:
格式 | MIME-type |
---|---|
MP4 | video/mp4 |
WebM | video/webm |
Ogg | video/ogg |
浏览器 | MP4 | WebM | Ogg |
---|---|---|---|
Internet Explorer | 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 文件
HTML5播放控制
HTML5 <video> 和 <audio> 元素同样拥有方法、属性和事件。
<video> 和 <audio>元素的方法、属性和事件可以使用JavaScript进行控制.
其中的方法用于播放、暂停以及加载等。其中的属性(比如时长、音量等)可以被读取或设置。其中的 DOM 事件能够通知您,比方说,<video> 元素开始播放、已暂停,已停止,等等。
例中简单的方法,向我们演示了如何使用 <video> 元素,读取并设置属性,以及如何调用方法。
播放器控制代码
下面的例子调用了两个方法:play() 和 pause()。它同时使用了两个属性:paused 和 width。
<p class="example">为视频创建简单的播放/暂停以及调整尺寸控件:</p>
<div style="text-align:center">
<button onclick="playPause()">播放/暂停</button>
<button onclick="scale_video(1.2)">放大</button>
<button onclick="scale_video(0.8)">缩小</button>
<br />
<video id="video1" width="480" controls>
<source src="movie.mp4" type="video/mp4" />
<source src="movie.ogg" type="video/ogg" />
你的浏览器不支持 HTML5 video.
</video>
<script>
var myVideo=document.getElementById("video1");
function playPause()
{
if (myVideo.paused)
myVideo.play();
else
myVideo.pause();
}
function scale_video(x)
{
myVideo.width *= x
}
</script></div>
讨论区