1. H5 新特性 -- 视频
1.1. Flash 技术被 H5 取代体现在哪些方面
| Flash | H5 |
|---|
| 视频和音频 | Flash 播放器 | video 和 audio 标签 |
| 绘图 | Flex / AS | canvas / SVG |
| 动画 | Flex / AS | canvas / SVG + 定时器 |
| 存储 | AS | Webstorage |
1.2. 视频播放
<video src="xxx.mp4"></video>
<video>
<source src="xxx.mp4">
<source src="xxx.ogg">
</video>
HTML5 新增的 video 标签是一个 300 * 150 的 inline-block, 若指定了 src 视频源, 会自动用第一帧的宽高撑开行内块元素
1.2.1. video 标签属性成员
src: 指定要播放的视频的资源路径
autoplay: 布尔值, 是否自动播放
controls: 布尔值, 是否显示播放控件
loop: 布尔值, 是否循环播放
muted: 布尔值, 是否静音
preload: auto, 字符串, 指定视频预加载策略
auto: 预加载视频元数据及缓冲一定时长
metadata: 仅预加载视频元数据( 视频的宽高, 时长, 第一帧内容 )
none: 不预加载任何数据
poster: 字符串, 在播放视频第一帧之前显示的海报 -> 海报只能在第一次播放之前显示一次
volume: number 类型, 默认值 1, 音量( JS 对象专有 )
duration: number 类型, 总时长( JS 对象专有, 单位 S )
currentTime: number 类型, 当前已播放的时长( JS 对象专有, 单位 S )
paused: 布尔值, 当前是否处于暂停状态( JS 对象专有 )
playbackRate: number 类型, 默认值 1, 回放速率( JS 对象专有 )
ended: 布尔值, 是否播放到结尾
1.2.2. video 标签方法成员
play(): 开始播放
pause(): 暂停播放
1.2.3. video 标签事件成员
play: 视频开始播放时执行
pause: 视频暂停播放时执行, 不论由于什么原因
playing: 视频暂停后准备播放时执行
2. H5 新特性 -- 音频
HTML5 提供了一个新的标签 audio 标签, 用于播放音频 该标签若没有设置 controls 属性, 则默认 display: none;, 反之则是一个 300 * 30 的 inline-block
2.1. audio 标签所具有的成员
2.1.1. audio 标签的属性成员
src: 指定要播放的音频的资源路径
autoplay: 布尔值, 是否自动播放
controls: 布尔值, 是否显示播放控件
loop: 布尔值, 是否循环播放
muted: 布尔值, 是否静音
preload: 字符串, 指定音频预加载策略
- 取值:
auto: 预加载音频元数据及缓存一段时长
metadata: 仅预加载音频元数据 ( 音频的时长, 第一帧内容 )
none: 不预加载任何内容
volume: number 类型, 默认为 1, 音量( JS 对象专有 )
duration: number 类型, 总时长( JS 对象专有 )
currentTime: number 类型, 当前已播放时长( JS 对象专有 )
paused: 布尔值, 当前是否处于暂停状态( JS 对象专有 )
playbackRate: number 类型, 默认值 1, 回放速率( JS 对象专有 )
ended: 布尔值, 是否播放到结尾
2.1.2. audio 标签的方法成员
play(): 开始播放
pause(): 暂停播放
2.2.3. audio 标签的事件成员
play: 音频开始播放时执行
pause: 音频暂停时执行, 无论由于何种原因
playing: 视频暂停后准备播放时执行