本文主要為大家詳細介紹了JavaScript實現音樂自動切換和輪播效果,具有一定的參考價值,有興趣的小伙伴們可以參考一下,希望能幫助到大家。
前言:前兩天有同學問我音樂自動切換,並在所有歌曲都播放完成以後實現循環播放的效果。自己折騰了一下做了出來,今天整理桌面的時候突然看見,在拖到回收站的一瞬間想著還是寫一篇博客分享一下。實作的方法有很多種,我這裡簡單的實作。
透過修改video的src(這種應該是最好節省資源的)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>welcome</title> <style type="text/css"> .content { width: 600px; margin:0 auto; border:1px solid red; } .left-bar { width: 300px; height: 200px; float: left; border:1px solid red; } ul li { list-style: none; margin-top: 20px; cursor: pointer; } li:hover { color: orange; } </style> </head> <body> <p class="left-bar"> <ul> <li class="music-name">十年</li> <li class="music-name">朋友</li> <li class="music-name">勇气</li> </ul> </p> <p class="content"> <video src="" id="video1" controls autoplay></video> <button id="btn">按钮</button> </p> <script> window.onload = function() { // 歌曲列表 var music = [ {id: 1, name:"十年"}, {id: 2, name:"朋友"}, {id: 3, name:"勇气"} ] // 记录当前是哪首歌曲 var currentMusic = 0; // 获取DOM var oVideo1 = document.querySelector("#video1"); // 初始化 oVideo1.src = music[0].name + '.mp3'; // 歌曲结束事件 oVideo1.onended = function() { currentMusic += 1; // 判断是否是最后一首 if(currentMusic === music.length) { currentMusic = 0; } var sr = music[currentMusic].name + '.mp3'; this.src=sr; } // 获取左边歌曲列表的DOM var aList = document.getElementsByClassName("music-name"); for(var i=0; i<aList.length; i++) { // 为了知道具体是那一个li aList[i].index = i; // 给每一个li设定一个事件 aList[i].onclick = function() { oVideo1.src = music[this.index].name + ".mp3"; } } } </script> </body> </html>
相關推薦:
以上是JavaScript實作音樂自動切換與輪播實例教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!