javascript - 单击带有空格键的按钮

标签 javascript html

我有一个带 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/

相关文章:

php - 'un-filled' 表单输入是否会减慢网站速度?

html - 专注于一个元素会改变另一个元素的 CSS

javascript - Firebase 推送 1 个输入值而不是 Span?

javascript - Casperjsvisible() 返回 true 而 jquery 为 (':visible' ) 对于相同的选择器返回 false

javascript - JavaScript 中的别名方法链?

javascript - 使用 javascript 从 JSON 动态检索信息

javascript - 单击并激活时突出显示菜单项

javascript - typescript 。如何从对象的值中获取对象的属性名称?

javascript - jasmine-maven-plugin:管理依赖关系和单独的规范执行

Html表格/tr高度