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

JS 中使用 new Audio() 音乐不播放?如何解决

JS 中使用 new Audio() 音乐不播放?

在使用 js 中的 new audio() 方法播放音乐时,遇到音乐不播放的问题并出现控制台报错 "domexception: failed to load because no supported source was found.",该如何解决?

问题解答:

首先,该错误提示表示浏览器未能加载媒体资源。接下来,new Audio(url) 方法会在提供 url 之后,异步加载媒体资源并返回一个新对象。

为了解决这个问题,建议在加载事件触发后的钩子函数中执行音频播放代码。以下是使用 canplaythrough 事件监听器的示例:

const music = new Audio('./1.mp3');
music.addEventListener("canplaythrough", event => {
  /* 音频可以播放;如果权限允许则播放 */
  music.play();
});

最后,如果音频仍然无法播放(控制台会出现其他错误),则可能是浏览器禁用了非用户交互的播放。在这种情况下,需要在页面中添加一个按钮,并在此按钮被点击后触发音频播放。

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