首页 > 解决方案 > Javascript 音频在播放时出现“该元素没有支持的来源”错误

问题描述

我正在制作我的第一个 javascript 游戏(Snake),并且我已经完成了大部分。现在我正在尝试添加声音,但它不起作用。我没有使用服务器,我使用的是本地 html 文件。

这是我试图播放声音的类的构造方法:

constructor(){
    ...
    this.collect_wav = new Audio("Sounds\\Coin.wav");
    ...
}

后来在其中一种方法中:

relocate(){
    ...
    this.collect_wav.play();
}

当代码运行时,new Audio运行没有错误,但是在线上play(),我在开发人员控制台中收到此错误: 我得到的错误 在与我的 html 文件相同的目录中有一个“声音”文件夹,并且在该文件夹内是Coin.wav,所以我认为路径是正确的,但它只是行不通。但是当我进入开发者控制台并转到sources选项卡时,我什至没有看到Sounds列出的文件夹,只有 html、css 和 javascript 文件在那里: 文件

我试过使用这样的html标签:

<audio controls>
    <source src="Sounds/Coin.wav" type="audio/wav">
</audio>

即使这不起作用,我看到控件显示,但它是灰色的,无法与之交互:

灰色控制

我还尝试用普通斜杠替换反斜杠(因为我不确定 html 中哪个是正确的),但这也没有帮助。这几天我一直在尝试解决这个问题,我真的不知道出了什么问题。

编辑:我发现了问题,我正在使用的wav文件有问题,当我将它更改为我从互联网下载的随机wav文件时,它可以工作。然后当我将其更改回原始 wav 时它停止工作。所以我想这只是我正在使用的 wav 文件有问题。

标签: javascripthtml5-audiogame-development

解决方案


推荐阅读