Я пытаюсь разработать код JavaScript, чтобы попытаться автоматически воспроизводить аудио при загрузке страницы.Чтобы сделать это успешно, я пошел в chrome: // flags и установил # autoplay-policy на «не требуется никаких жестов». Когда я сделал это, я смог успешно воспроизводить аудио автоматически из обычного JavaScript + HTMLТем не менее, когда я помещаю этот же код в файл content.js моего собственного расширения Chrome, я получаю эту ошибку «Uncaught (в обещании) DOMException», которая является той же ошибкой, которую я получал до того, как отключил флаг Chrome в своемобычные файлы JavaScript + HTML.
const sound = new Audio()
function playSound() {
sound.src = 'audio/dragon.mp3';
sound.play();
}
setTimeout(function () {
playSound();
}, 2000)
Это код, который работает на моей обычной веб-странице JavaScript + HTML после того, как я изменил # autoplay-policy, не требуя жестов. Когда я использую этот же код в своемРасширение Chrome, оно не будет воспроизводить аудио автоматически.
Общий вопрос: влияют ли флаги Chrome на политики расширений Chrome? Или есть что-то еще, что не позволяет воспроизводить мое аудио.Потому что я не понимаю, почему отключение # autoplay-policy позволяет моему одному веб-сайтуавтоматически воспроизводить файл MP3, но расширение Chrome не может.