簡體   English   中英

Web 音頻 api - AudioContext 不允許啟動。 它必須在頁面上的用戶手勢后恢復(或創建)

[英]Web audio api - The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page

所以我的控制台上有這個警告。 我閱讀了文檔: https://developers.google.com/web/updates/2017/09/autoplay-policy-changes

我按照他們說的做了一切,但我仍然有這個警告。 這是我的代碼:

let context;
window.onload = function() {
    context = new AudioContext();
    ...
}

// click event
document.addEventListener('click', function (e) {
    if (e.target.closest('.play1')) {
       context.resume().then(() => {
            source.start(0);
       });
    }
})

警告文本是關於這一行的: context = new AudioContext();

有誰看到我錯過了什么? 非常感謝

是的,警告是因為您沒有在用戶手勢中創建上下文。 我覺得這個警告很煩人,因為在沒有用戶手勢的情況下創建上下文並沒有錯。 不允許的是在沒有用戶手勢的情況下啟動/恢復上下文。

由於您通過用戶單擊恢復上下文,所以一切都很好。

我會忽略它。 或者通過單擊或其他用戶手勢創建上下文。

我希望 Chrome 能夠修復警告,以便它僅在您嘗試在沒有用戶手勢的情況下恢復上下文時顯示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM