SourceBuffer: error 事件
注意:此功能在 專用 Web Workers 中可用。
SourceBuffer 介面的 error 事件會在 appendBuffer() 操作處理過程中發生錯誤時觸發。例如,當要追加的資料格式不正確、SourceBuffer 處於無效狀態,或者使用者代理無法處理資料時,都可能發生這種情況。此時,updating 屬性會從 true 變為 false。此事件在 updateend 事件之前觸發。
語法
在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。
js
addEventListener("error", (event) => { })
onerror = (event) => { }
事件型別
一個通用的 Event。
示例
處理 appendBuffer() 過程中的錯誤
此示例演示瞭如何處理 appendBuffer() 操作過程中發生的錯誤。
js
const sourceBuffer = source.addSourceBuffer(mimeCodec);
sourceBuffer.addEventListener("error", () => {
downloadStatus.textContent = "Error occurred during decoding";
});
sourceBuffer.addEventListener("update", () => {
downloadStatus.textContent = "Done";
});
sourceBuffer.addEventListener("updateend", () => {
source.endOfStream();
});
downloadStatus.textContent = "Downloading...";
fetch(assetURL)
.then((response) => response.arrayBuffer())
.then((data) => {
downloadStatus.textContent = "Decoding...";
sourceBuffer.appendBuffer(data);
});
規範
| 規範 |
|---|
| Media Source Extensions™ # dfn-error |
| Media Source Extensions™ # dom-sourcebuffer-onerror |
瀏覽器相容性
載入中…