【问题标题】:How To Stop Desired Keyboards/Mouse Keys On A WebPage?如何停止网页上所需的键盘/鼠标键?
【发布时间】:2014-06-13 01:04:09
【问题描述】:

我有问题。我想通过使用纯 JavaScript 而不是 JQuery 在我的网页上停止一些键盘和鼠标键。我怎样才能做到这一点?这是我想要停止的键列表吗?

  • 键盘向上箭头
  • 键盘向下箭头
  • 键盘向上翻页键
  • 键盘 PageDown 键
  • 键盘主页键
  • 键盘结束键
  • 键盘 CTRL + 数字键盘 2 键
  • 键盘 CTRL + 数字键盘 8 键
  • 键盘 CTRL + 键盘 U 键
  • 鼠标滚轮向上
  • 鼠标滚轮向下

【问题讨论】:

  • 停止,以防止用户执行这些操作时通常会发生的操作?好伤心,为什么?这会让我很恼火,一旦我弄清楚如何使用我残废的键盘和鼠标,我就会离开。
  • @MichaelPetrotta 提前致谢。实际上我正在做一个项目,所以我想在访问者点击它们时停止这些键的工作,因为我在我的项目的链接上手动添加了所有这些功能。等待查看代码...

标签: javascript keyboard key mouse mousewheel


【解决方案1】:

您要做的是通过侦听事件来防止在按下这些键时执行默认操作...

document.addEventListener('keydown', function(e) {

   if(e.which == 91 /* up arrow */ || e.which == 93 /* down arrow */ ... add all the keys here)
      e.preventDefault();
      return false;
   }
}

然后对鼠标滚轮字符代码执行相同操作。

【讨论】:

  • 这些可以吗? Char Codes List
  • 知道了。查看我的答案和演示... :)
【解决方案2】:

我找到了我想要的代码及其工作。所以我也在这里分享,认为它也可以帮助你。首先在 http://jsfiddle.net/CQLpV/1/ 观看现场演示,然后从下方获取代码。

<script type='text/javascript'>
window.addEventListener("keydown", function(e) {
    // Space Bar And Arrow Keys Are Addto To Stop Working
    if([32, 37, 38, 39, 40].indexOf(e.keyCode) > -1) {
        e.preventDefault();
    }
}, false);
</script>

您可以从All Keyboard Keys Char Codes List获取更多键盘按键字符代码。

【讨论】:

    猜你喜欢
    • 2023-04-02
    • 2012-08-01
    • 2015-10-16
    • 2012-07-05
    • 2020-02-11
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2021-03-23
    相关资源
    最近更新 更多