JavaScript 通过 HTMLMediaElement 接口实现音视频控制,支持 play()、pause()、currentTime 等基础操作,配合 loadedmetadata、timeupdate 等事件及 playbackRate、pictureInPicture 等进阶功能。

JavaScript 操作音视频主要通过 HTMLMediaElement 接口(<audio></audio> 和 <video></video> 元素的基类)实现,浏览器原生提供了一套稳定、跨平台的媒体控制 API,无需额外库即可完成播放、暂停、音量调节、时间跳转等核心操作。
基础播放控制 API
这些是最常用、最直接的控制方法:
-
play():开始或恢复播放;可能返回 Promise(尤其在需用户交互触发时),需处理拒绝情况 -
pause():暂停当前播放 -
load():重载媒体资源(例如切换 src 后调用,确保元数据更新) -
canPlayType(type):检查浏览器是否支持某 MIME 类型(如"video/mp4"),返回"probably"、"maybe"或空字符串
状态与属性读写
通过属性实时获取或设置播放状态和参数:
-
currentTime:获取或设置当前播放时间(单位:秒),常用于进度条同步或跳转 -
duration:媒体总时长(秒),注意加载初期为NaN,需监听loadedmetadata事件后才可用 -
paused、ended、readyState:判断播放状态(如readyState === 4表示已可播放) -
volume:音量值(0.0–1.0),设为 0 即静音;配合muted属性更可靠地实现静音切换 -
playbackRate:设置播放速率(如0.5、2.0),支持倍速播放
关键事件监听
响应用户操作或媒体生命周期变化:
标签: javascript java html 浏览器
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~