最近因为项目上用到音乐播放,就仔细研究了一下html5 audio API,利用国庆休息的时间,进行了一些总结,有些坑还没填好已经备注文档中。
这篇文章主要是介绍一些基本使用,**下一篇将主要与大家分享audio在各个浏览器和设备上存在的问题以及如何去解决。**
常用属性
| 属性 | 作用 |
|--- | --- |
|src | 设置或返回是否在就绪(加载完成)后随即播放音频 |
|currentSrc | 返回当前音频的 URL。|
|currentTime | 设置或返回音频中的当前播放位置(以秒计)。|
|duration | 返回音频的长度(以秒计)。|
|readyState | 返回音频当前的就绪状态。|
|networkState | 返回音频的当前网络状态。|
功能播放设置
属性 | 值 | 作用
---|---|---------
paused | bool | 设置或返回音频是否暂停。
ended | bool | 返回音频的播放是否已结束。
muted | bool |设置或返回是否关闭声音。
controls| bool| 设置或返回音频是否应该显示控件(比如播放/暂停等)。
loop | bool |设置或返回音频是否应在结束时再次播放。
autoplay |bool| 设置或返回是否在就绪(加载完成)后随即播放音频。
preload |bool| 设置或返回音频的 preload 属性的值。
volume | 范围 0-1 |设置或返回音频的音量。
playbackRate | 1.0/2.0倍速度 -2后退两倍速度 | 设置或返回音频/视频播放的速度(留下一个坑 负值不起作用)
常用方法
名称 | 作用
---|---
canPlayType() | 查浏览器是否可以播放指定的音频类型 "probably" - 浏览器最可能支持该音频/视频类型,"maybe" - 浏览器也许支持该音频/视频类型,"" - (空字符串)浏览器不支持该音频/视频类型
fastSeek() | 在音频播放器中指定播放时间
load() | 重新加载音频元素
play() | 开始播放音频
pause() | 暂停当前播放的音频
常用事件
事件名称 | 事件描述
---|---
loadstart | 客户端开始请求数据
progress | 客户端正在请求数据(或者说正在缓冲)
play | 播放中
pause | 暂停
ended | 播放结束
timeupdate | 当前播放时间发生改变的时候。常用作显示进度
canplaythrough | 歌曲已经载入完全完成
canplay | 缓冲至目前可播放状态。
error | 播放发生错误时。