在空间按下阻止滚动 - Chrome

时间:2013-10-01 12:12:22

标签: javascript jquery css google-chrome

症状:当用户在 Google Chrome 中按空格键时,页面会向下滚动一点。

为什么对我这么重要?

我开发了一个UNIX shell终端模拟器,用户可以在其中输入包含空格的文本命令。他们只是在太空按下时跳了起来,这很烦人。

替代解决方案不是我真正想要的:

  • 在终端上设置position:fixed
  • 在正文上设置overflow:hidden
  • 使用jQuery删除滚动条并制作假滚动条

在我开始努力在右边制作一个“人工”滚动条之前,我要求你提供一个更好的解决方案。任何遇到类似问题的人,你做了什么?

1 个答案:

答案 0 :(得分:4)

您是否考虑过使用event.preventDefault()

类似的东西:

document.body.addEventListener("keydown", function (event) {
     if (event.keyCode === 32 && event.target === document.body) {
         event.preventDefault();
     }
}, false);