纯JavaScript。要按一个键播放(打字机)声音(.wav)。同时,只要按下该键,指示灯就会点亮并保持点亮状态。问题是声音文件一直循环播放,直到我松开琴键为止。有没有一种方法可以使声音文件只播放一次而不循环播放,即使我一直按下该键也是如此?
script.js
window.addEventListener("keydown", lightOn, false);
window.addEventListener("keyup", lightOff, false);
let click = new Audio("../sound/click.wav");
function lightOn(key) {
switch (key.keyCode) {
case 65:
// click.loop = false; <- tried this but does not prevent looping
click.play();
document.getElementById("a").style.color = "goldenrod";
}
}
function lightOff() {
document.querySelector(".typing").style.color = "#ccc";
}
运行保留键并在控制台上查看.....
window.addEventListener("keydown", e => {
console.log(e.key)
});
现在防止重复
window.addEventListener("keydown", e => {
if(e.repeat)
return
console.log(e.key)
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句