我有一个要按下的键,以便创建键盘事件,这是我已链接到文件中的声音。声音src是正确的,据我所知,我的JavaScript也是如此。在HTML文件中添加声音是否有我不知道的步骤?
我的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body>
<div class="container">
<div class="row">
<div class="col-12">
<div data-key="83" class="key">
<kbd>s</kbd>
<span class="sound">clap</span>
</div>
</div>
</div>
</div>
<audio data-key="83" src="jap/big_taiko.wav"></audio>
<script>
window.addEventListener('keydown', function(e) {
const audio = document.querySelector('audio[data-key="${e.keyCode}"]');
if (!audio) return;
audio.play();
});
</script>
</body>
</html>
最佳答案
对于字符串插值,您应该使用倒勾号`
而不是单个'
引号。使用以下选择器:`audio[data-key="${e.keyCode}"]`
关于javascript - JS的键盘事件无法播放音频吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41968982/