cambia sorgente audio con tag audio jQuery e HTML5

Ho trovato solo un’altra soluzione, ma era incompleta quindi ho bisogno di aiuto qui.

ho impostato l’audio:

 

Ho una tabella di collegamenti generata dynamicmente per cambiare la traccia:

  

Ho questo jquery che non ho idea di cosa fare per cambiare la traccia

 $('.track').click(function(){ load_track = $(this).attr('data-location');//gets me the url of the new track change_track(load_track);// function to change the track of the loaded audio player without page refresh preferred... }); 

ho trovato questa funzione ma non la sto usando nel modo giusto

  function change_track(sourceUrl) { audio.empty(); $("#ogg_src").attr("src", sourceUrl).appendTo(audio); /****************/ audio[0].pause(); audio[0].load();//suspends and restores all audio element /****************/ } audio = $(" 

La tua funzione di modifica dovrebbe essere così:

 function change(sourceUrl) { var audio = $("#player"); $("#ogg_src").attr("src", sourceUrl); /****************/ audio[0].pause(); audio[0].load();//suspends and restores all audio element //audio[0].play(); changed based on Sprachprofi's comment below audio[0].oncanplaythrough = audio[0].play(); /****************/ } 

I problemi erano audio.empty () e l’audio var. Stavi tentando di aggiungere un tag audio svuotato e non hai scritto il tag audio sul browser.

Si potrebbe anche voler rinominare la funzione poiché ‘change’ è già una funzione nell’universo jQuery.