У меня есть следующий HTML
<div data-song="song1" class="songs">
<audio id="song1">
<source src="audio/song1.mp3" type="audio/mpeg">
Your browser does not support the audio element
</audio>
</div>
<div data-song="song2" class="songs">
<audio id="song2">
<source src="audio/song2.mp3">
Your browser does not support the audio element
</audio>
</div>
и следующий Javascript / jQuery:
var songs={};
$(".songs").each(function(){
let id=$(this).attr("data-song");
let song=$("#" + id);
songs[id]=new Music(song);
songs[id].play();
})
function Music(song) {
this.song=song;
this.play=function(){song.play();};
}
Когда я пытаюсь их воспроизвести, как в конце $ (элемент).each, я получаю сообщение об ошибке:
Uncaught TypeError: song.play не является функцией Music.play (main.js: 37) в: 1: 15
Куда я иду не так?Это кажется простым.