2016-12-29 98 views
0

我希望能夠顯示歌曲點擊時的說明,該歌曲將在歌曲播放期間播放。即當第一首歌曲被點擊時,無論我想播放的歌曲的小描述都會在歌曲播放時顯示。歌曲結束後,帶顯示屏的盒子應該消失。嘗試在播放音樂時將歌曲描述添加到音頻

的HTML中的音頻文件有:

<audio src="http://mediaplayer.yahoo.com/js" controls id="audioPlayer"> 
    Sorry, your browser doesn't support html5! 
</audio> 
<ul id="playlist"> 
    <li class="current-song"><a href="sounds/Sad%20Mans%20Tongue.mp3"><span class="blacktextbg">Sad Man's Tongue</span></a></li> 
    <li><a href="sounds/breed.mp3"><span class="blacktextbg">Breed</span></a></li> 
    <!--<li><a href="sounds/creep.mp3">Creep</a></li>--> 
    <li><a href="sounds/Everything%20Zen.mp3"><span class="blacktextbg">Everything Zen</span></a></li> 
    <li><a href="sounds/Ain't%20It%20Funky%20Now%20Pt%202.mp3"><span class="blacktextbg">Ain't It Funky Now Pt 2</span></a></li> 
    <!--<li><a href="sounds/once.mp3">Once</a></li>--> 
    <li><a href="sounds/killing all the joy.mp3"><span class="blacktextbg">Killing All The Joy</span></a></li> 
    <!--<li><a href="sounds/torn.mp3">Torn</a></li> 
    <li><a href="sounds/aftermidnight.mp3">After Midnight</a></li>--> 
    <li><a href="sounds/X1BetaOWS.mp3"><span class="blacktextbg">OWS</span></a></li> 
    <li><a href="sounds/X1 Alpha.mp3"><span class="blacktextbg">X1 Alpha</span></a></li> 
    <!--<li><a href="sounds/undome.mp3">Undo Me</a></li>--> 
    <li><a href="sounds/Low%20.mp3"><span class="blacktextbg">Low</span></a></li> 
    <!--<li><a href="sounds/Cumbersome.mp3">Cumbersome</a></li> 
    <li><a href="sounds/Thru%20Your%20Window%20.mp3">Thru Your Window</a></li>--> 
    <li><a href="sounds/Reconsider%20Baby.mp3"><span class="blacktextbg">Reconsider Baby</span></a></li> 
    <li><a href="sounds/4lee.mp3"><span class="blacktextbg">4LEE</span></a></li> 
    <li><a href="sounds/show%20biz%20kids.mp3"><span class="blacktextbg">Show Biz Kids</span></a></li> 
    <!--<li><a href="sounds/show%20biz%20guitar.mp3">Show Biz Guitar</a></li> 
    <li><a href="sounds/Voodoo%20Child.mp3">Voodoo Child</a></li> 
    <li><a href="sounds/saveme.mp3">Save Me</a></li>--> 

</ul> 
<script src="https://code.jquery.com/jquery-2.2.0.js"></script> 
<script src="audioPlayer.js"></script> 
<script> 
    audioPlayer(); 
</script> 

我使用的是audioplayer.js:

function audioPlayer(){ 
     var currentSong = 0; 
     $("#audioPlayer")[0].src = $("#playlist li a")[0]; 
     $("#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; 
     }); 
    }// JavaScript Document 

我認爲解決這個問題將有包含在事物的方式audioplayer.js文件添加當前歌曲類時,儘管我不知道如何去做。謝謝!

回答

0

假設您的每首歌曲的詳細信息都已準備好,您可以修改audioPlayer.js以顯示特定於當前歌曲的信息。

CSS 
.song-info { 
    display:none; // hidden by default 
} 

HTML 
<div id="song-info"> 
    Nothing playing. 
</div> 

JS 
let currentDescription = descriptions[currentSong] 
$('#song-info').css('display', 'inline'); 
$('#song-info').text(currentDescription); 

在上面的JS它假定「描述」是手柄地圖一首歌描述的,匹配audioPlayer.js引用的歌曲陣列的指數(粉飾如何以及在哪裏你會得到這樣的地圖)。它檢索當前歌曲的描述文本並修改'#song-info'div的內容。您需要將這些行包含在audioPlayer.js文件中currentSong被分配新值的地方。

+0

謝謝!我知道這是沿着這些路線的,但不知道如何執行它。我會努力找出其餘的:) –

+1

明白了!已經休息了幾天,但我能夠簡單地使用你寫的內容,創建了一個包含描述標籤的數組,並且一切都非常漂亮!謝謝! –