Задать вопрос
@dotnetman
.NET Core

Возможно ли воспроизвести аудиофайл после получения разрешения пользователя на воспроизведение аудио 1 раз?

Я пытаюсь воспроизвести аудио без взаимодействия с пользователем и получаю ошибку:
"Uncaught (in promise) DOMException: The play method is not allowed by the user agent or the platform in the current context, possibly because the user denied permission."
Вот мой код:
<audio id="beep"> <source src="~/Content/Sounds/beep.mp3" type="audio/mp3"> </audio>
 <script> 
      var playAudio = $("#beep")[0]; 
      playAudio.play(); 
</script>

Как я понимаю, это запрещено текущими браузерами воспроизводить аудио без явного взаимодействия пользователя. Возможно ли как-то, когда страница загружается, попросить пользователя дать разрешение на воспроизведение аудио на сайте, и только после явного разрешения пользователя загрузить страницу, а затем вызывать этот код в JS, когда мне нужно?
  • Вопрос задан
  • 104 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
Okujava-script
@Okujava-script
Веб-программист с абсолютным слухом и композитор
Ваш код хочет воспроизвести звук по ходу загрузки страницы. В этом случае никак не успевает пользователь взаимодействовать со страницей. В отличии от этой ситуации, по программным событиям для уведомлений можно автоматом воспроизводить аудио, но всё упирается в это взаимодействие, оно должно произойти до того, как произойдет первое программное событие. Достаточно кликнуть в любом месте страницы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы