2
var audioPlaying = false;
if (!audioPlaying) {
// get a random audio element that has the class .sound
audio = $('.s' + (Math.round(Math.random() * $('.sounds').size())));
audio.get(0).play();
audioPlaying = true;
setTimeout(function(audioPlaying) {
audioPlaying = false;
}, 1000);
}
我正在处理播放声音的javascript事件。我不需要每秒播放一个以上的声音。我有一个函数检查音频是否正在播放(通过true/false变量),然后,如果是,选择一个随机音频元素并播放它。然后它设置变量说音频正在播放(true),然后设置一个超时以在1秒后将该变量切换回假。使用jQuery + Javascript播放HTML5具有间距的音频元素
这应该使音频播放至少1秒后播放。但是,它似乎没有将audioPlaying变量重新设置为false。其中一个声音播放,没有之后。如果我删除了将audioPlaying更改为true的代码,则播放的声音之间没有任何间距。
任何人都知道什么是错的?