Keydown/keyup事件未检测到Chrome中输入文本字段上按下的Escape键

spi*_*row 15 javascript jquery google-chrome javascript-events

当用户在文本字段上按下转义键时,我想要做某事.只要在Safari和Firefox的输入框中按下Escape键,此代码27就会记录,但不会在Chrome中记录.我也尝试绑定keyup,而不是使用jQuery(即,只使用原始Javascript),并尝试使用keyCode而不是which,没有一个帮助.顺便说一句,Chrome似乎与Enter,修饰键等所有其他键完全一样.任何想法是什么?

注意:我在Mountain Lion上使用的是Chrome 22.0.1229.94.

更新:顺便说一句,如果它有帮助,当我在Chrome中的输入框上按下escape时,它会失去焦点而在其他两个浏览器上却没有.

spi*_*row 74

终于找到了造成这种情况的原因:Vimium chrome扩展,它捕获了Escape键.

这里已经提交了一个错误:https://github.com/philc/vimium/issues/499.

  • 你刚救了我的命.我想赞成这500次. (21认同)
  • 哈哈谢谢你!你不知道我花了多少时间在这上面,或者它给我带来了多少麻烦. (5认同)
  • Vimium现在提供"passNextKey"命令,因此您可以按<C - ]> <Esc>将<Esc>键发送到输入字段. (3认同)
  • 如何设置`passNextKey`:[在输入中使用Escape键](https://github.com/philc/vimium/wiki/Tips-and-Tricks#using-the-escape-key-in-inputs) (2认同)