我正在将这个简单的音频播放器用于音乐网站。它在本地运行正常,但在网站上托管时却无法运行。
当我单击另一首歌曲时,该程序安装在网站上,仍然会打开一个新窗口。我对JS和jquery仅有一点经验,并且尝试过更改e。事件。但这没有用。 JS位于正文中的脚本标签中,并且没有单独链接。我在哪里放置console.log()函数以测试preventDefault()函数是否运行?
在此先感谢您的帮助。
这是我用于音频播放器的脚本
<script src="https://code.jquery.com/jquery-2.2.0.js"></script>
<script type="text/javascript>
function audioPlayer(){
var currentSong = 0;
$("#audioPlayer-lk")[0].src = $("#playlist-lk li a")[0];
$("#audioPlayer-lk")[0].play();
$("#playlist-lk li a").click(function(e){
e.preventDefault();
$("#audioPlayer-lk")[0].src = this;
$("#audioPlayer-lk")[0].play();
$("#playlist-lk li").removeClass("current-song-lk");
currentSong = $(this).parent().index();
$(this).parent().addClass("current-song-lk");
});
$("#audioPlayer-lk")[0].addEventListener("ended", function(){
currentSong++;
if(currentSong == $("#playlist-lk li a").length)
currentSong = 0;
$("#playlist-lk li").removeClass("current-song-lk");
$("#playlist-lk li:eq("+currentSong+")").addClass("current-song-lk");
$("#audioPlayer-lk")[0].src = $("#playlist li a")[currentSong].href;
$("#audioPlayer-lk")[0].play();
});
}
audioPlayer(); </script>
答案 0 :(得分:0)
您需要使用$(document).ready()函数包装audioPlayer()函数,如下所示:
$(document).ready(function(){
audioPlayer();
})