我有一个带 anchor 的按钮,出于可访问性原因,我想用空格键触发。相反,当按钮处于焦点状态时,单击空格键会向下跳转页面。
<a href="stackoverflow.com">Go to Stack Overflow</a>
我试过吃掉空格键:
window.onkeydown = function(e) {
return !(e.keyCode == 32);
};
但这当然不是我想要的。我不确定将空格键映射到回车键是否是一个明智的解决方案,或者是否可能。如何使用纯 JS 触发带空格键的按钮?
最佳答案
您可能需要研究防止默认的解决方案:
window.onkeydown = function(event){
if(event.keyCode === 32) {
event.preventDefault();
document.querySelector('a').click(); //This will trigger a click on the first <a> element.
}
};
这将阻止空格键执行默认操作(发送一个空格),然后您可以将滚动添加到函数内该命令下方的命令。
关于javascript - 单击带有空格键的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28485460/