He configurado HTML y Javascript que pueden controlar la reproducción de una pista de audio en una página web. Me gusta mucho la simplicidad de JavaScript con la función de reproducción/parada, pero no puedo hacer que se reproduzca automáticamente. Aquí está mi código javascript:
$('body'); var audio = document.getElementById("audio-player"); audio.volume = 0.2; if ($(window).length) { $('.bg-player').css({ 'visibility': 'visible' }); $('body').addClass("audio-on"); if ($('body').hasClass('audio-on')) { $('body').removeClass('audio-off'); } $(".bg-player").on('click', function() { $('body').toggleClass("audio-on audio-off"); if ($('body').hasClass('audio-off')) { audio.pause(); } if ($('body').hasClass('audio-on')) { audio.play(); } }); }Intenté agregar la propiedad de reproducción automática pero no tuve éxito:
audio.autoplay = true;Me gustaría saber si hay una forma de reproducir el archivo en la carga de la página.
Es una función de seguridad del navegador para no reproducir automáticamente un audio a menos que haya alguna interacción del usuario.
https://developers.google.com/web/updates/2017/09/autoplay-policy-changes#new-behaviors
La reproducción automática con sonido está permitida si:
El usuario ha interactuado con el dominio (clic, toque, etc.). En el escritorio, se cruzó el umbral del índice de interacción con los medios del usuario, lo que significa que el usuario ha reproducido previamente un video con sonido. El usuario agregó el sitio a su pantalla de inicio en el dispositivo móvil o instaló el PWA en el escritorio.