Estoy creando una web donde puedes subir archivos mp3 a través del diálogo de archivo, pero no sé cómo decirle a la web que reproduzca ese sonido que subió el usuario (?
function importData() { let input = document.createElement('input'); input.type = 'file'; input.onchange = e => { // you can use this method to get file and perform respective operations var file = e.target.files[0]; console.log(file.name); } }Una vez que tenga el nombre de archivo del usuario, necesita obtener su contenido, lo que puede hacer con un FileReader. Una vez que tenga el contenido, puede colocarlo como el src de un elemento de audio HTML5 y reproducirlo.
Aquí hay un ejemplo simple:
function getAudio() { const input = document.querySelector('input'); const audio = document.querySelector('audio'); input.type = 'file'; input.onchange = e => { var file = e.target.files[0]; var reader = new FileReader(); reader.addEventListener('load', function(e) { audio.src = e.target.result; audio.play(); }); reader.readAsDataURL(file); } } getAudio(); <input> <audio src=""></audio>