使用ExtJS捕获功能键事件(F1-F12)

时间:2015-03-25 17:38:19

标签: javascript extjs keydown keyup

如何在功能键上监听按键事件( F1 F2 F3 等。)使用ExtJS?

我正在尝试使用 F8 键激活触发器字段。

我尝试覆盖isSpecialKey方法以添加“specialKey”事件但没有成功 - 我也尝试使用Key.map但是也不会触发任何事情。

有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:2)

您可以根据特定功能键的已知密钥代码检查事件的密钥代码。为方便起见,它们在版本 5.x Ext.event.Event类中预定义静态变量,在版本 4.x 中存在Ext.EventObject(在无论是哪种情况,都可以通过事件实例本身的self属性访问类/原型。

Ext.getBody().on('keydown', function(ev){
    if(ev.getKey() === ev.self.F8)
        Ext.Msg.show({ msg: 'F8 pressed!' });
});

» Fiddle - 请注意,您附加监听器的组件应该具有焦点。
(在此示例中为应用程序窗口)