diff --git a/song-request-station.html b/song-request-station.html
index cb33409..e19d578 100644
--- a/song-request-station.html
+++ b/song-request-station.html
@@ -47,7 +47,7 @@
-
{{ item.tag }}
+
{{ item.tag }}
diff --git a/static/js/index.js b/static/js/index.js
index 47d6436..8e0cc34 100644
--- a/static/js/index.js
+++ b/static/js/index.js
@@ -211,6 +211,8 @@ createApp({
const src = playData.value?.playurl || "";
const area = playData.value?.area || "";
+ console.log(audioPlayer.value.src, src);
+
if (audioPlayer.value.src != src) {
manageAudio(src, area);
return;
@@ -524,12 +526,11 @@ createApp({
else getPlayUrl(index, area);
};
-
// 监听 previewState 如果为 true body.style.overflow = 'hidden'
watch(previewState, (newVal) => {
- if (newVal) document.body.style.overflow = 'hidden';
- else document.body.style.overflow = 'auto';
- })
+ if (newVal) document.body.style.overflow = "hidden";
+ else document.body.style.overflow = "auto";
+ });
return { judgmentPlayUrl, cutSong, getPlayUrl, handleBarDragBottomClick, startBarDragBottom, volumeShow, handleVolumeHide, handleVolumeShow, zeroOrderStudents, rePlay, playData, awardAudioList, changeInterval, awardMVList, bannerList, albumBoxRef, volume, handleVolumeClick, handleVolumeDrag, startDrag, stopDrag, volume, cutStudent, studentList, studentIndex, scrollToPrevious, scrollToNext, changePointer, pointerIndex, visibleRef, studentRef, customRef, formatTime, currentTimeFormatted, durationFormatted, worksRef, introduceRef, customList, closeAll, manageAudio, progress, closePreview, openPreview, previewState, audioPlayer, trait, fastForward };
},
diff --git a/static/js/song-request-station.js b/static/js/song-request-station.js
index 2de3dfa..1728f8f 100644
--- a/static/js/song-request-station.js
+++ b/static/js/song-request-station.js
@@ -391,9 +391,9 @@ createApp({
const audioPlayer = ref(null);
- const clickSongs = (songs) => {
+ const clickSongs = (tag, songs) => {
const randomIndex = Math.floor(Math.random() * songs.length);
- const item = songs[randomIndex];
+ const item = { ...songs[randomIndex], tag };
manageAudio(item);
};
@@ -402,10 +402,7 @@ createApp({
const audio = audioPlayer.value;
closeAll();
setTimeout(() => {
- console.log("item", item);
if (audio?.src != item.path) audio.src = `./static/mp3/station/${item.path}`;
- // audio.src = "https://app.gter.net/image/miniApp/mp3/1.mp3";
- // audio.src = "/static/mp3/1.MP3";
audio.play().then(() => (playData.value = { ...item, state: true }));
}, 500);
};
@@ -517,25 +514,21 @@ createApp({
durationFormatted.value = formatTime(duration);
};
- // 快进 和 后退 10秒
+ // 切换下一首 或 上一首
const fastForward = (type = "fast") => {
if (!audioPlayer.value) return;
- console.log("playData.value", playData.value);
- const src = playData.value?.path || "";
+ tags.value.forEach((item) => {
+ if (item.tag == playData.value.tag) {
+ const songs = item.songs || [];
+ const index = songs.findIndex((song) => song.name == playData.value.name);
+ // 通过下标 type = "fast" 为下一首 否则为上一首 并且需要轮回播放
+ const newIndex = type == "fast" ? (index + 1) % songs.length : (index - 1 + songs.length) % songs.length;
- if (audioPlayer.value.src != src) {
- manageAudio(playData.value);
- return;
- }
-
- let currentTime = audioPlayer.value.currentTime || 0;
- const duration = audioPlayer.value.duration || 0;
- let newTime = 0;
- if (type == "fast") newTime = Math.min(currentTime + 10, duration);
- else newTime = Math.max(currentTime - 10, 0);
- audioPlayer.value.currentTime = newTime;
- getProgress();
+ const data = { ...songs[newIndex], tag: item.tag };
+ manageAudio(data);
+ }
+ });
};
// 关闭所有播放