Javascript HTML格式的音频播放列表
感谢大家,我刚刚解决了这个问题。 我试图理解如何用html制作音频播放列表,所以我尝试按照这里的教程:(下面给出的代码)来实现我的目标。唯一的问题是它不起作用,当一首歌结束时,它总是返回到列表上的第二首歌,而且控制台告诉我有一个“未捕获(承诺中)的DomeException”,我不知道如何解决Javascript HTML格式的音频播放列表,javascript,jquery,html,css,Javascript,Jquery,Html,Css,感谢大家,我刚刚解决了这个问题。 我试图理解如何用html制作音频播放列表,所以我尝试按照这里的教程:(下面给出的代码)来实现我的目标。唯一的问题是它不起作用,当一首歌结束时,它总是返回到列表上的第二首歌,而且控制台告诉我有一个“未捕获(承诺中)的DomeException”,我不知道如何解决 function audioPlayer() { var currentSong = 0; $("#audioPlayer")[0].src = $("playlist li a")[0]
function audioPlayer() {
var currentSong = 0;
$("#audioPlayer")[0].src = $("playlist li a")[0];
$("#audioPlayer")[0].play();
$("#playlist li a").click(function(e) {
e.preventDefault();
$("#audioPlayer")[0].src = this;
$("#audioPlayer")[0].play();
$("#playlist li").removeClass("current-song");
currentSong = $(this).parent().index();
$(this).parent().addClass("current-song");
});
$("#audioPlayer")[0].addEventListener("ended", function() {
currentSong++;
if (currentSong == $("#playlist li a").length) {
currentSong = 0;
}
$("#playlist li").removeClass("current-song");
$("#playlist li:eq(" + currentSong + ")").addClass("current-song");
$("#audioPlayer")[0].src = $("#playlist li a")[currentSong].href;
$("#audioPlayer")[0].play();
});
}
此外,使用css,我试图使播放的歌曲的名称变为蓝色,但实际情况是,我单击的所有歌曲的名称都变为蓝色,而不仅仅是播放的歌曲
#audioPlayer {
display: block;
margin-left: auto;
margin-right: auto;
}
#playlist li a {
color: white;
text-decoration: none;
}
#playlist .current-song a {
color: #0b80f7;
}
如果有人能帮助我,我将不胜感激
多亏了大家,我刚刚解决了这个问题。所以基本上是错的,我在跨度内使用了“a”元素,如下所示:
<li class="current-song"> <span><a href="../music/lights.mp3"> Lights Down Low</a></span><span>3:43</span></li>
3:43
相反,我应该做的是:
<li class="current-song"> <a href="../music/lights.mp3"> Lights Down Low</a><span>3:43</span></li>
3:43
所以根据我的脚本它可以工作。。。有时候我真的很笨。感谢所有发表评论的人 尝试在javascript函数audioPlayer(){var currentSong=0;和html音频标记中添加此preload=“none”@教父我的文件没有保存或者我没有写在这里,但是我已经添加了var currentSong=0:P抱歉,我会编辑它。我尝试了你所说的,但它没有解决问题:C这里似乎有一个语法错误,你在
if
语句中写了length
,而不是length
。@KevinPastor Ups,你是ri嗯,编辑它。但它也没有解决问题:/