小编

要在多个HTML页面之间切换时持续播放背景音乐,可以利用JavaScript和localStorage来实现。
这里有一个大略的实现方案:

创建一个隐蔽的音频播放器: 在每个HTML页面的<body>标签内添加一个隐蔽的音频标签,并设置自动播放和循环播放属性。
利用JavaScript掌握音频状态: 当页面加载时,检讨localStorage中是否有音乐正在播放的状态,如果有,则规复播放。
同时,当页面离开时,记录音乐的播放状态到localStorage。

下面是一个简化版的多页面背景音乐连续播放的Demo示例。
这个例子包含两个HTML文件:index.html 和 page2.html。
请确保你有相应的音频文件(如music.mp3)并放置在与HTML文件相同的目录下。

index.html

<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <title>首页</title> <style> #backgroundMusic { display: none; } </style> </head> <body> <h1>首页</h1> <p>这是首页,背景音乐会持续播放。
</p> <a href="page2.html">前往第二页</a> <audio controls id="backgroundMusic" loop> <source src="https://img.mtsws.cn/LightPicture/2023/08/45f935a39d0189c0.mp3" type="audio/mpeg" /> 您的浏览器不支持 audio 元素。
</audio> <script> document.addEventListener('DOMContentLoaded', function () { var audio = document.getElementById('backgroundMusic') setupMusic(audio) }) function setupMusic(audio) { var musicTime = parseFloat(localStorage.getItem('musicTime')) || 0 var isPlaying = localStorage.getItem('musicPlaying') === 'true' audio.currentTime = musicTime if (isPlaying) { audio.play().catch(function (error) { console.error('自动播放被阻挡:', error) }) } audio.onplay = function () { localStorage.setItem('musicPlaying', true) } audio.onpause = function () { localStorage.setItem('musicPlaying', false) } audio.ontimeupdate = function () { localStorage.setItem('musicTime', audio.currentTime) } } </script> </body></html>
page2.html

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>第二页</title> <style> #backgroundMusic { display: none; } </style></head><body><h1>第二页</h1><p>切换到第二页,背景音乐仍旧连续播放。
</p><a href="index.html">返回顾页</a><audio id="backgroundMusic" src="music.mp3" loop></audio><script> document.addEventListener('DOMContentLoaded', function() { var audio = document.getElementById('backgroundMusic'); setupMusic(audio); }); // 与index.html中相同的setupMusic函数,确保音乐播放逻辑同等 function setupMusic(audio) {/...函数内容与上文相同.../}</script></body></html>

在这个示例中,index.html 和 page2.html 都包含了相同的JavaScript逻辑来管理背景音乐的播放状态和韶光。
当用户在页面间导航时,音乐将会无缝连续播放,而不是重新开始。
请根据实际须要调度音频文件路径和其他细节。

html页面播放音乐html多页面实现配景音乐的持续播放简略处置笔记 NoSQL