Javascript 为什么escape按键在Ace编辑器中不起作用?

Javascript 为什么escape按键在Ace编辑器中不起作用?,javascript,html,css,ace-editor,Javascript,Html,Css,Ace Editor,我将Ace JavaScript编辑器与vim键绑定一起使用。但是,当我按escape键(例如,退出插入模式)时,编辑器将取消聚焦,而不是退出模式。对于我来说,在所有现代浏览器中捕获这个按键并允许ace使用它的最佳方式是什么 要观察此问题,请转到,打开vim键,然后尝试进入和退出模式。我正在运行最新版本的Firefox。在文档中附加一个按键事件可能会有所帮助吗 如果按下的键是escape,请调用e.preventDefault,以防止出现默认浏览器行为 $(文档).on(“向下键”,函数(e)

我将Ace JavaScript编辑器与vim键绑定一起使用。但是,当我按escape键(例如,退出插入模式)时,编辑器将取消聚焦,而不是退出模式。对于我来说,在所有现代浏览器中捕获这个按键并允许ace使用它的最佳方式是什么


要观察此问题,请转到,打开vim键,然后尝试进入和退出模式。我正在运行最新版本的Firefox。

在文档中附加一个
按键事件可能会有所帮助吗

如果按下的键是escape,请调用
e.preventDefault
,以防止出现默认浏览器行为

$(文档).on(“向下键”,函数(e){
如果(e.key==“Escape”){
e、 预防默认值();
控制台日志(e键+“按下”);
}
})

关闭我在任何地方安装的Vimium扩展都有效。很抱歉,所有在这件事上花费时间的人…

我做了这件事。它不起作用(仍不聚焦且不退出模式)@vityavv尝试更改选择器(例如,使用div的id而不是
文档
)我做了。。。确切的代码是
document.getElementById(“div”).addEventListener('keydown',e=>{…})
因为我不使用jquery,这听起来像是ace中的一个bug,但我无法在firefox+windows7上复制它。您在哪个操作系统上看到这个问题,浏览器控制台中有错误吗?Linux,没有控制台问题。chrome中的bug对我来说也很明显。只是在运行windows 10和chrome时复制了它