Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z odtwarzaniem dźwięku w przeglądarce
adrianpl20
post
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 16
Dołączył: 20.02.2014

Ostrzeżenie: (10%)
X----


Witam. Mam problem z odtwarzaniem krótkiego dźwięku w przeglądarce po wystąpieniu jakiejś akcji. Dźwięk działa, dopiero gdy kliknę na cokolwiek na stronie, a gdy wejdę na stronę/odświeżę ją i nic nie kliknę, to dźwięku nie słychać. Nie mam pojęcia co to może być, próbowałem robić coś w stylu .focus() i .click() na pierwszym elemencie obejmującym całą stronę (#page), a także na obiekcie "window", ale nic to nie pomogło.

[JAVASCRIPT] pobierz, plaintext
  1. function playSound() {
  2. var mp3Source = '<source src="/media/sound1.mp3" type="audio/mpeg">';
  3. var embedSource = '<embed hidden="true" autostart="true" loop="false" src="/media/sound1.mp3">';
  4. document.getElementById('sound-container').innerHTML = '<audio autoplay="autoplay">' + mp3Source + embedSource + '</audio>'; // #sound-container to pusty div na samym końcu strony
  5. }
[JAVASCRIPT] pobierz, plaintext


Próbowałem też używać tego kodu z internetu (oczywiście po odpowiednim dopasowaniu do swojej struktury):
var media = document.getElementById("YourVideo");
[JAVASCRIPT] pobierz, plaintext
  1. const playPromise = media.play();
  2. if (playPromise !== null){
  3. playPromise.catch(() => { media.play(); })
  4. }
[JAVASCRIPT] pobierz, plaintext

ale nic to nie zmieniło, a dodatkowo catch() wykonywało się non stop i przeglądarkę mi zawieszało biggrin.gif

Oczywiście próbowałem też odtwarzania przez klasę Audio, ale w konsoli wywala mi błąd "Uncaught (in promise) DOMException"
[JAVASCRIPT] pobierz, plaintext
  1. var audio = new Audio('audio_file.mp3');
  2. audio.play();
[JAVASCRIPT] pobierz, plaintext


Ktoś coś wie? smile.gif
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 23:21