【发布时间】:2020-04-08 20:30:34
【问题描述】:
我知道有类似的问题,但我找不到答案,我正在尝试创建一个不常见的快捷方式,以便根据特定的键组合执行操作。我没有一个例子,因为我没有实现它,我试图弄清楚我是否可以做到。我有 Ctrl、shift、alt、meta 键的组合,我可以在 javascript 中捕获,我的问题是我想使用像“g”这样的通用键并使其表现得像 Ctrl、shift、alt、meta 等,以便与 F1、F2、F3 键组合以在屏幕上执行带有特定视觉组件的 javascript 函数。一个示例,我打算创建一个快捷方式“Ctrl+1+F1”来在网页中的特定表中执行操作,该网页在 html 上显示多个表。如果可以做到这一点,任何人都可以回答我吗?如果有人可以,我该怎么做?
【问题讨论】:
-
这个问题很笼统。我会回答是的,您可以像捕获
ctrl键一样捕获g键。你应该尝试实现一些东西并检查它在哪里阻塞。从那里,我们可以帮助您解决特定问题。 -
我想您可以跟踪上下按下了哪些键,然后决定是否从那里按下组合。但是为什么不直接使用 Ctrl+F1 呢?键盘上似乎有足够多的键来做几乎任何你想做的事情。事实上,我估计使用四个修饰键的平均键盘组合大约有 200-400 个。
-
我认为开箱即用是不可能的,但您应该能够通过监听
keydown和keyup事件并跟踪按下的内容和未按下的内容来模拟它. -
@AntoniSilvestrovič,因为,我有一个 Ctrl+F1 的组合用于组件上的特定操作,并且由于我在同一页面上可能有多个相同类型的组件,我需要一个第三个键标识具体的组件我将执行该动作,我不打算使用 ctrl、shift、alt,因为这意味着我可以使用的组件数量的限制,也会让用户感到困惑。我的怀疑是因为我打算应用人体工程学,为了做到这一点,我需要创建一个我可以使用的标准,这就是我想使用这种不寻常的按键组合的原因。
-
@Vilx-,我知道我可以用这两个事件模拟这种行为,问题是,我如何模拟这种行为?
标签: javascript keypress keydown