JS 中使用 new Audio() 音乐不播放?如何解决 “Failed to load because no supported source was found.” 错误?

js 中使用 new audio() 音乐不播放?如何解决 “failed to load because no supported source was found.” 错误?

js 中使用 new audio() 音乐不播放?

问题:

使用 js 中的 new audio() 创建音频对象,但音乐无法播放,控制台报错 "failed to load because no supported source was found."。

回答:

造成此问题的可能原因有几个。

首先,检查音频文件的格式和位置。确保文件是支持的音频格式(例如 mp3 或 wav),并且其路径正确。

其次,new audio() 方法是异步的。这意味着它会在返回新对象之前开始异步加载媒体资源。因此,建议在加载事件被触发时再执行播放操作。

此外,有些浏览器禁止非用户交互的媒体播放。这意味着音乐无法在页面加载时自动播放。您可以添加一个按钮,让用户点击后开始播放。

以下是修复代码的示例:

const music = new Audio('./1.mp3');
music.addEventListener("canplaythrough", event => {
  music.play();
});

如果问题仍然存在,请检查浏览器是否禁止了非用户交互的媒体播放。

以上就是JS 中使用 new Audio() 音乐不播放?如何解决 “Failed to load because no supported source was found.” 错误?的详细内容,更多请关注其它相关文章!