html+js音乐播放 ,包含上一首 ,下一首,暂停,歌曲名称显示和进度显示
时间: 2023-05-30 22:03:46 浏览: 587
下面是一个简单的 HTML 和 JavaScript 音乐播放器示例,包含上一首、下一首、暂停、歌曲名称显示和进度显示。
HTML 代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>音乐播放器</title>
</head>
<body>
<h1>音乐播放器</h1>
<div>
<span>歌曲名称:</span>
<span id="songName"></span>
</div>
<div>
<a href="#" onclick="prevSong()">上一首</a>
<a href="#" onclick="pauseSong()">暂停</a>
<a href="#" onclick="nextSong()">下一首</a>
</div>
<div>
<progress id="progressBar" max="100"></progress>
</div>
<audio id="audioPlayer" src=""></audio>
<script src="script.js"></script>
</body>
</html>
```
JavaScript 代码:
```javascript
// 歌曲列表
var songs = [
{
name: "歌曲1",
url: "song1.mp3"
},
{
name: "歌曲2",
url: "song2.mp3"
},
{
name: "歌曲3",
url: "song3.mp3"
}
];
// 当前播放的歌曲索引
var currentSongIndex = 0;
// 获取 DOM 元素
var audioPlayer = document.getElementById("audioPlayer");
var songName = document.getElementById("songName");
var progressBar = document.getElementById("progressBar");
// 加载第一首歌曲
loadSong();
// 加载歌曲
function loadSong() {
audioPlayer.src = songs[currentSongIndex].url;
songName.innerHTML = songs[currentSongIndex].name;
audioPlayer.play();
}
// 上一首歌曲
function prevSong() {
currentSongIndex--;
if (currentSongIndex < 0) {
currentSongIndex = songs.length - 1;
}
loadSong();
}
// 下一首歌曲
function nextSong() {
currentSongIndex++;
if (currentSongIndex >= songs.length) {
currentSongIndex = 0;
}
loadSong();
}
// 暂停歌曲
function pauseSong() {
if (audioPlayer.paused) {
audioPlayer.play();
} else {
audioPlayer.pause();
}
}
// 更新进度条
audioPlayer.addEventListener("timeupdate", function() {
var progress = (audioPlayer.currentTime / audioPlayer.duration) * 100;
progressBar.value = progress;
});
```
说明:
1. 歌曲列表包含歌曲名称和 URL。
2. 音频元素 `audioPlayer` 用于播放歌曲。
3. `loadSong` 函数用于加载当前播放的歌曲。
4. `prevSong` 函数和 `nextSong` 函数用于切换上一首和下一首歌曲。
5. `pauseSong` 函数用于暂停和继续播放歌曲。
6. 进度条元素 `progressBar` 用于显示歌曲播放进度,通过监听 `timeupdate` 事件更新进度条的值。
阅读全文