Javascript 如何在HTML5中停止并播放多个声音而不重叠?
我正在使用javascriptAudio类在HTML5应用程序的后台播放不同的音频文件。Javascript 如何在HTML5中停止并播放多个声音而不重叠?,javascript,html,html5-audio,Javascript,Html,Html5 Audio,我正在使用javascriptAudio类在HTML5应用程序的后台播放不同的音频文件。 每个音频文件都绑定到按钮的单击事件 现在我想要实现的是,当点击一个按钮时,当前正在进行的音频应该立即停止,绑定到该特定按钮的音频应该启动 我尝试过使用pause()和mute()方法,但在这两种情况下,音频重叠的时间非常小(您可以使用played()此函数设置或返回音频/视频是否暂停 首先,您暂停音频,然后在播放声音后检查音频是否暂停,而不是在暂停后播放音频。在您的函数中调用的暂停()函数在哪里?哎呀!我忘
每个音频文件都绑定到按钮的单击事件 现在我想要实现的是,当点击一个按钮时,当前正在进行的音频应该立即停止,绑定到该特定按钮的音频应该启动 我尝试过使用pause()和mute()方法,但在这两种情况下,音频重叠的时间非常小(您可以使用
played()
此函数设置或返回音频/视频是否暂停
首先,您暂停音频,然后在播放声音后检查音频是否暂停,而不是在暂停后播放音频。在您的函数中调用的暂停()函数在哪里?哎呀!我忘了在前面添加它。它在第6行,我试图调用mute()在同一行上以及在两个不同的行上,然后在更改“src”后调用play(),但问题仍然存在。我没有在html中使用任何标记。我正在通过javascript操纵Audio()对象,因此我认为您的答案不会有帮助:(@sibtainorain:哦..我之前没有收到你的问题,很抱歉答案不可靠。这个答案只适用于
标记。如果问题存在,你可以再次评论。
if (sound === null) {
sound = new Audio("sounds/" + audioId + ".mp3");
sound.play();
}
else {
sound.pause();
sound.src = "sounds/" + audioId + ".mp3";
sound.play();
}