AudioContext:close() 方法
AudioContext
接口的 close()
方法关闭音频上下文,释放其使用的任何系统音频资源。
此函数不会自动释放所有由 AudioContext
创建的对象,除非其他引用也已释放;但是,它将强制释放任何可能阻止创建和使用其他 AudioContexts
的系统音频资源,暂停音频上下文中的音频时间进程,并停止处理音频数据。当所有阻止创建 AudioContext
的资源都已释放时,返回的 Promise
将被解析。如果在 OfflineAudioContext
上调用此方法,则会抛出 INVALID_STATE_ERR
异常。
语法
js
close()
参数
无。
返回值
示例
以下代码段取自我们的 AudioContext 状态演示(查看其运行情况)。当单击停止按钮时,将调用 close()
。当 Promise 解析时,示例将重置为其初始状态。
js
stopBtn.onclick = () => {
audioCtx.close().then(() => {
startBtn.removeAttribute("disabled");
susresBtn.setAttribute("disabled", "disabled");
stopBtn.setAttribute("disabled", "disabled");
});
};
规范
规范 |
---|
Web Audio API # dom-audiocontext-close |
浏览器兼容性
BCD 表格仅在启用了 JavaScript 的浏览器中加载。