媒体元素

166 阅读2分钟

「这是我参与2022首次更文挑战的第20天,活动详情查看:2022首次更文挑战

前言

今天看到了HTML5里面两个和媒体相关的元素,它们是 audio 和 video ;实现了在web应用上嵌入音频和视频元素。接下来分析一下其中的小细节~

元素

这两个元素既支持web开发者在页面中嵌入媒体文件,也支持使用JavaScript对它们进行自定义控制,以下是它们的用法:

<video src="conference.mpg" id="myVideo">Video player not available.</video>
<audio src="music.mp3" id="myVideo">Audio player not available.</audio>

要求每个元素必须要有src属性,用来表示要加载的媒体文件,此外还可以指定视频播放器大小的width和height属性,以及在视频加载期间显示URL的poster属性,controls属性存在时表示浏览器应该显示播放界面,让用户可以直接控制媒体。由于浏览器支持的媒体格式不同,所以还要支持多个不同的媒体源,可以删掉元素中的src属性,用一个或多个source属性代替:

<video id="myVideo">
    <source src="conference.webm" type="vidoe/webm; codes='vp8,vorbis'">
    <source src="conference.ogv" type="vidoe/ogv; codes='theora,vorbis'">
    <source src="conference.mpg" >
    Video player not available.
</video>

属性、事件

这两个元素提供了稳健的JavaScript接口,它们有很多共同的属性,比如:autoplay、src、start、loop、paused、ended等
此外还有很多事件,这些事件会监控由于媒体回放或用户交互导致的不同属性的变化,比如:error 会在下载期间出现网络错误时触发,progress 会在下载中触发,abort 会在下载被中断时触发,等等;这些事件被设计的很具体,以便web开发者能够使用较少的HTML和JavaScript创建自定义的音频、视频播放器。

综述

上面是这两个元素一些基本的知识点,明天用实际例子体验一下~