我正在为自己制作这个小练习项目,一个鼓机,你按下一个按钮 - 你会得到某种声音。一切正常,直到我在 Safari 中打开它。它播放一次声音,然后它会播放一次,但是音频听起来有问题而且很安静,以至于我最初认为根本没有声音。我附上了 codepen 的链接。当然,codepen 版本中没有声音,因为我真的不知道在哪里可以轻松上传它们。如果有人知道这样做的好方法,我也很乐意添加。
<div data-key="KeyA" class="button flex">
<h1>A</h1>
<h2>Kick</h2>
<audio data-key="KeyA" src="./sounds/kick.wav"></audio>
</div>
<div data-key="KeyS" class="button flex">
<h1>S</h1>
<h2>Snare</h2>
<audio data-key="KeyS" src="./sounds/snare.wav"></audio>
</div>
...
const buttons = document.querySelectorAll('.button');
buttons.forEach(button => {
button.addEventListener('click', e => {
const sound = document.querySelector(`audio[data-key="${button.dataset.key}"]`);
sound.currentTime = 0;
sound.play();
window.addEventListener('keydown', e => {
const sound = document.querySelector(`audio[data-key="${e.code}"]`);
sound.currentTime = 0;
sound.play();
boxPress(e);
});