【发布时间】:2016-07-15 03:00:21
【问题描述】:
我的 html 中有一个音频标签,里面有 .wav。使用 Javascript,我选择音频标签并播放 wav,我使用键盘键触发。 我想要实现的是,例如,在按下每个“A”键时,重放 .wav/从头开始播放声音)
音频播放正常,暂停也正常。但是,当我直接暂停播放 .wav 时,我会听到爆裂声。
var audio = document.getElementById(sound);
if (!isPlaying(audio)) {
audio.play(); // works
} else {
audio.pause(); // pops on this line; I checked with commenting below lines.
audio.currentTime = 0;
audio.play();
}
我找到了this answer,据我了解,这是因为我立即将音量设置为 0;但我无法弄清楚我的情况。我相信使用带有 setInterval 的推子不是一个好方法
我还找到了audio.muted = true,并尝试在暂停音量之前使用它(并在播放音频之前使用audio.muted = false),但这也会产生爆音
更新:
我认为我需要使用淡出来解决这个问题。有没有办法立即淡出音频?
【问题讨论】:
-
我认为使用带有 setInterval 的推子不是一个好方法 为什么不呢?
-
我不确定我说的......我需要播放 3 秒的音频和 0.2 秒的镜头;不仅是示例镜头。这就是为什么我认为设置一个间隔并相应地触发淡出不会让我拥有 3 秒和 0.2 秒音频的通用代码。如果这是一个好方法,你能澄清一下吗?
标签: javascript jquery html audio