您好,登錄后才能下訂單哦!
前言:前兩天有個同學(xué)問我音樂自動切換,并在所有歌曲都播放完成以后實(shí)現(xiàn)循環(huán)播放的效果。自己折騰了一下做了出來,今天整理桌面的時候突然看見,在拖到回收站的一瞬間想著還是寫一篇博客分享一下。實(shí)現(xiàn)的方法有很多種,我這里簡單的實(shí)現(xiàn)。
通過修改video的src(這種應(yīng)該是最好節(jié)省資源的)
<!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> <div class="left-bar"> <ul> <li class="music-name">十年</li> <li class="music-name">朋友</li> <li class="music-name">勇氣</li> </ul> </div> <div class="content"> <video src="" id="video1" controls autoplay></video> <button id="btn">按鈕</button> </div> <script> window.onload = function() { // 歌曲列表 var music = [ {id: 1, name:"十年"}, {id: 2, name:"朋友"}, {id: 3, name:"勇氣"} ] // 記錄當(dāng)前是哪首歌曲 var currentMusic = 0; // 獲取DOM var oVideo1 = document.querySelector("#video1"); // 初始化 oVideo1.src = music[0].name + '.mp3'; // 歌曲結(jié)束事件 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設(shè)定一個事件 aList[i].onclick = function() { oVideo1.src = music[this.index].name + ".mp3"; } } } </script> </body> </html>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。