问题标签 [keypress]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
635 浏览

javascript - 捕获不同的按键

当你按住一个键时,JQuery 事件开始像这个单一的按键一样疯狂地弹出:

是否有任何(甚至非浏览器便携)方法可以为每个按下的键捕获一个事件(例如:按下 A 并按住它,这应该只产生一个函数调用)?

干杯!

0 投票
3 回答
3309 浏览

jquery - 获取 keydown 上的文本框值 + 多语言支持

我想获取文本的值,包括 keydown 事件中的字符。

它适用于字符、数字和所有基本字符。32-127 ASCII 范围。

如果文本框具有多语言输入,我不确定这是否可行。非英文字符。

有人可以分享他们的经验吗?

谢谢,

0 投票
7 回答
107436 浏览

javascript - 停止按键事件

如何keypress停止keydown.

我有一个keydown处理程序,我需要停止keypress事件。

实际上我有一个表格和文本框。

当用户enter按键时,keydown触发事件并拥有处理程序。

表单提交将被触发keypress,所以我需要在我的处理程序中停止该keypress事件。keydown

0 投票
3 回答
18392 浏览

linux - 在 Linux 终端应用程序中接收按键和按键释放事件?

我想编写一个简单的 C 程序,它将根据“key down”和“key up”事件执行不同的操作。该程序将从rxvt内部运行。

我应该使用什么库或机制来访问按键和释放?/dev/tty阅读只会提供关键版本是真的吗?这对于 termcap、terminfo、ncurses 和 slang 也是如此吗?有没有办法从终端应用程序中实现这一点?

0 投票
1 回答
2057 浏览

c - 帮助:达到最大客户端数 - 分段错误

我想模拟许多按键事件。我通过使用找到了解决方案XTestFakeKeyEvent,但是当我模拟超过 210 次时,我的程序引发了“达到的最大客户端数”分段错误。我不知道如何解决这个问题。

我的代码在这里:

输出 :

请哪位帮忙,谢谢。

0 投票
4 回答
59325 浏览

jquery - jquery keypress() 事件获取文本

我希望在文本框上发生按键时运行一个函数,所以我有以下代码:

这工作正常,但在我的函数中,我想根据文本框中的文本值做一些事情

现在这里的问题是它落后了一个键,所以如果我的文本框显示“He”并且我输入一个“l”,那么我希望我的 textValue 为“Hel”,但它返回之前的值“He”因为大概该字符尚未放入文本框中。

有没有办法让'Hel'脱离我的职能?

谢谢 :)

0 投票
2 回答
411 浏览

vb.net - 检测按键

我正在编写一个扩展剪贴板用途的程序,但我需要知道用户何时剪切、复制或粘贴了某些内容,以便我可以据此编写代码。我需要知道如何检查用户何时输入了这样的命令。

0 投票
4 回答
7853 浏览

c# - 如何使用 C# SendKeys 以编程方式按下 Windows 键

基本上我想在代码中模拟用户点击 windows 键。我知道有 SendKeys 如果我得到它们的句柄,它允许我将按键发送到 Windows,但我不知道我需要处理什么才能发送 Windows 键命令。例如,Windows 键 + L。稍加阅读后,似乎 CTRL-ESC 也应该弹出“开始”菜单,但不确定如何告诉它将键发送到 Windows(如果这甚至可能的话)。任何帮助将非常感激。

干杯!

0 投票
10 回答
20966 浏览

java - 如何知道用户何时真正释放了 Java 中的密钥?

(为清楚起见进行了编辑)

我想检测用户何时按下并释放 Java Swing 中的键,忽略键盘自动重复功能。我还想要一个纯 Java 方法在 Linux、Mac OS 和 Windows 上工作。

要求:

  1. 当用户按下某个键时,我想知道那是什么键;
  2. 当用户释放某个键时,我想知道那是什么键;
  3. 我想忽略系统自动重复选项:我希望每次按键只接收一个按键事件,每个按键释放只接收一个按键释放事件;
  4. 如果可能的话,我会使用项目 1 到 3 来了解用户是否一次持有多个键(即,她点击“a”并且没有释放它,她点击“Enter”)。

我在 Java 中面临的问题是,在 Linux 下,当用户按住某个键时,会触发许多 keyPress 和 keyRelease 事件(因为键盘重复功能)。

我尝试了一些没有成功的方法:

  1. 获取最后一次按键事件发生的时间——在 Linux 中,按键重复的次数似乎为零,但在 Mac OS 中则不然;
  2. 仅当当前 keyCode 与上一个不同时才考虑一个​​事件 - 这样用户就不能连续两次击中相同的键;

这是代码的基本(非工作)部分:

当用户持有一个键(即'p')时,系统会显示:

至少在 Linux 下,当一个键被持有时,JVM 会不断地重新发送所有的键事件。为了让事情变得更加困难,在我的系统(Kubuntu 9.04 Core 2 Duo)上,时间戳不断变化。JVM 发送具有相同时间戳的键新版本和新按键。这使得很难知道何时真正释放了密钥。

有任何想法吗?

谢谢

0 投票
1 回答
481 浏览

flex3 - Adobe Flex 关键捕捉

在我的 Flex 应用程序中,当单击F11键时,页面进入全屏状态并扰乱了页面的形状。任何人都可以帮助我捕获F11密钥。我正在使用 IE7。