HTMLMediaElement: load() 方法
HTMLMediaElement 的 load() 方法会将媒体元素重置到初始状态,并开始选择媒体源并加载媒体的过程,以便从开头开始播放。
预取的媒体数据量由元素的 preload 属性的值决定。
此方法通常仅在您对媒体元素的可用源集进行了动态更改时才有用,这些更改可能是通过更改元素的 src 属性或添加或删除嵌套在媒体元素本身中的 <source> 元素来完成的。load() 会重置元素并重新扫描可用的源,从而使更改生效。
语法
js
load()
参数
无。
返回值
无(undefined)。
用法说明
调用 load() 会中止与此媒体元素相关的所有正在进行的操作,然后根据 <audio> 或 <video> 元素及其 src 属性或子 <source> 元素中指定的选项,开始选择和加载合适的媒体资源的过程。这在 HTML 视频和音频页面中有更详细的描述。
中止任何正在进行的活动的过程将导致由 play() 返回的所有待定 Promise 根据其在加载新媒体开始之前的状态被相应地fulfilled 或 rejected。待定的 play Promise 会被一个 "AbortError" DOMException 中止。
随着加载过程的进行,将向媒体元素本身发送适当的事件。
- 如果元素已在加载媒体的过程中,则该加载过程将被中止,并发送
abort事件。 - 如果元素已与媒体初始化,则会发送
emptied事件。 - 如果将播放位置重置到媒体的开头确实改变了播放位置(即,它尚未位于开头),则会发送
timeupdate事件。 - 一旦选择了媒体并且已准备好开始加载,就会分发
loadstart事件。 - 从这一点开始,事件的发送方式与任何媒体加载一样。
示例
此示例在文档中查找一个 <video> 元素,并通过调用 load() 来重置它。
js
const mediaElem = document.querySelector("video");
mediaElem.load();
规范
| 规范 |
|---|
| HTML # dom-media-load-dev |
浏览器兼容性
加载中…