这是我的代码:

Mousetrap.bind('l', (e) => {
  console.log('l')
})

Mousetrap.bind('k+l', (e) => {
  console.log('k+l')
})


我有两个问题:

1.当我按l时,我看到两个日志。有什么想法吗?

2.当我按下k + l时,我也看到了两个日志(我理解为什么),但是有什么想法可以防止这种情况发生?

谢谢

最佳答案

这是因为k不是有效的修饰键。

the docs中所述:


  对于修饰键,您可以使用shift,Ctrl,Alt或Meta。


换句话说,k+l被标准化为l,即您绑定了l两次。



有关更多详细信息,您可以检查逻辑in the mousetrap source directly的相关位。

09-19 18:36