如何使用 JavaScript 添加一个调用另一个函数 onkeyup 的函数?
How do I use JavaScript to add a function that calls another function onkeyup?
基本上我有一个像架子鼓一样的小网站。我希望它在您单击屏幕上的元素时播放声音,然后我还希望每当我按下相应的数字键盘键时,屏幕上的元素都能够 "clicked""。
我点击它就可以播放了,我只是无法使用 onkeyup 功能。
const sounds = document.querySelectorAll('.sound');
const drumPads = document.querySelectorAll('.drumpadContainer');
const keycodes =[
49,
50,
51,
52,
53,
54
]
//Can i make sound??
drumPads.forEach((drumpad, index) => {
drumpad.addEventListener('click', function() {
console.log("You clicked a button");
sounds[index].currentTime = 0;
sounds[index].play();
})
drumpad.addEventListener('onkeyup', function() {
if (onkeyup == keycodes[index]){
drumPads[index].click();
}
})
});
})
keyup
处理程序应该在 window
上。它应该得到键码的索引,然后用它来得到相应元素的索引来点击。
window.addEventListener("keyup", function(e) {
var index = keycodes.indexOf(e.keyCode);
if (index > -1) {
drumPads[index].click();
e.preventDefault();
e.stopPropagation();
}
}
基本上我有一个像架子鼓一样的小网站。我希望它在您单击屏幕上的元素时播放声音,然后我还希望每当我按下相应的数字键盘键时,屏幕上的元素都能够 "clicked""。
我点击它就可以播放了,我只是无法使用 onkeyup 功能。
const sounds = document.querySelectorAll('.sound');
const drumPads = document.querySelectorAll('.drumpadContainer');
const keycodes =[
49,
50,
51,
52,
53,
54
]
//Can i make sound??
drumPads.forEach((drumpad, index) => {
drumpad.addEventListener('click', function() {
console.log("You clicked a button");
sounds[index].currentTime = 0;
sounds[index].play();
})
drumpad.addEventListener('onkeyup', function() {
if (onkeyup == keycodes[index]){
drumPads[index].click();
}
})
});
})
keyup
处理程序应该在 window
上。它应该得到键码的索引,然后用它来得到相应元素的索引来点击。
window.addEventListener("keyup", function(e) {
var index = keycodes.indexOf(e.keyCode);
if (index > -1) {
drumPads[index].click();
e.preventDefault();
e.stopPropagation();
}
}