【发布时间】:2018-12-17 04:18:24
【问题描述】:
我有这个功能,可以为不同的键播放不同的声音。但是如果我按下一个键,然后立即按下另一个键,之前的声音仍然会播放。
我的问题是,播放新的声音时如何取消之前的声音?
代码如下:
window.addEventListener("keydown", checkKeyPressed, false);
function checkKeyPressed(evt) {
if (evt.keyCode == "81") { //q
document.getElementById('enklyd').play();
}
if (evt.keyCode == "87") { //w
document.getElementById('lyd1').play();
}
if (evt.keyCode == "69") { //e
document.getElementById('lyd2').play();
}
if (evt.keyCode == "82") { //r
document.getElementById('lyd3').play();
}
if (evt.keyCode == "84") { //t
document.getElementById('lyd4').play();
}
if (evt.keyCode == "89") { //y
document.getElementById('lyd5').play();
}
}
【问题讨论】:
-
您是否尝试过寻找任何解决方案? stackoverflow.com/questions/14834520/html5-audio-stop-function
-
我读过那篇文章。我对 js 很陌生,当然没有看过 jquery,因此没有从那个帖子中得到任何帮助
标签: javascript function if-statement html5-audio