單個 <embed> 只能播放固定音樂,如何實現多首歌曲切換播放?
利用 jQuery 監聽播放列表鏈接點擊,動態重寫容器 innerHTML 為新的 <embed> 標籤,瀏覽器會自動調用內置播放器播放新音樂。
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<table>
<tr>
<td id="tdPlayer"></td>
<td id="tdPlayList">
<b>播放列表</b><br>
<a href="https://mp3a.9ku.com/hot/2004/07-16/33272.mp3">33272.mp3</a><br>
<a href="https://mp3tuijian.9ku.com/tuijian/2014/12-18/656578.mp3">656578.mp3</a><br>
<a href="https://mp3tuijian.9ku.com/tuijian/2014/12-25/656809.mp3">656809.mp3</a><br>
</td>
</tr>
</table>
<script>
$(function(){
$('#tdPlayList a').click(function(){
$('#tdPlayer').html('<embed src="' + this.href + '" loop="-1" autostart="true" hidden="false" >');
return false; // 阻止跳轉
});
});
</script>
<embed> 會實例化插件播放對應音頻。<audio> + JS 控制)。<embed> 依賴瀏覽器插件,現代瀏覽器建議改用 <audio> 標籤。<audio id="player" controls></audio>
<script>
$('#tdPlayList a').click(function(e){
e.preventDefault();
$('#player').attr('src', this.href)[0].play();
});
</script>
HTML5 <audio> 原生支持播放結束事件 ended,輕鬆實現自動播放列表。