AudioContext: suspend() 方法
AudioContext 介面的 suspend() 方法會暫停音訊上下文中的時間程序,暫時停止音訊硬體訪問,並在此過程中減少 CPU/電池使用量——如果你希望應用程式在一段時間內不使用音訊上下文時關閉音訊硬體,這將非常有用。
如果對 OfflineAudioContext 呼叫此方法,將丟擲 INVALID_STATE_ERR 異常。
語法
js
suspend()
引數
無。
返回值
示例
以下程式碼片段取自我們的 AudioContext 狀態演示(線上檢視)。當點選 suspend/resume 按鈕時,會查詢 AudioContext.state——如果狀態是 running,則呼叫 suspend();如果狀態是 suspended,則呼叫 resume()。在每種情況下,一旦 Promise 解析,按鈕的文字標籤都會相應更新。
js
susResBtn.onclick = () => {
if (audioCtx.state === "running") {
audioCtx.suspend().then(() => {
susResBtn.textContent = "Resume context";
});
} else if (audioCtx.state === "suspended") {
audioCtx.resume().then(() => {
susResBtn.textContent = "Suspend context";
});
}
};
規範
| 規範 |
|---|
| Web Audio API # dom-audiocontext-suspend |
瀏覽器相容性
載入中…