Javascript 如何在ExtJS4.2中突出工具栏按钮?
ExtJS中有一个应用程序,我正在努力不使用鼠标来管理应用程序。有些事情已经完成了,但我不知道如何使用工具栏按钮。工具栏按钮无法聚焦。尽管在启用了应用程序的Ext.FocusManager中 要解决这个问题需要做什么Javascript 如何在ExtJS4.2中突出工具栏按钮?,javascript,extjs,Javascript,Extjs,ExtJS中有一个应用程序,我正在努力不使用鼠标来管理应用程序。有些事情已经完成了,但我不知道如何使用工具栏按钮。工具栏按钮无法聚焦。尽管在启用了应用程序的Ext.FocusManager中 要解决这个问题需要做什么 var nav3 = Ext.create('Ext.util.KeyNav', Ext.getBody(), { "enter" : function(){ var el = Ext.FocusManager.focuse
var nav3 = Ext.create('Ext.util.KeyNav', Ext.getBody(), {
"enter" : function(){
var el = Ext.FocusManager.focusedCmp;
if( el.getXType() == 'menuToolbar' ){
console.log(el.items.items[0]);
el.items.items[0].focus();
}
},
scope : this
});
代码中有几个问题。首先,
Ext.create
接受两个参数,然后传递三个参数。因此,创建的类无法工作
el.items.items[0]
无法工作。而是使用el.down('button')
告诉您要选择的组件
您的代码可能如下所示
var nav3 = Ext.create('Ext.util.KeyNav', {
target: Ext.getBody(),
enter: function(){
var el = Ext.FocusManager.focusedCmp;
if( el.getXType() == 'menuToolbar' ){
console.log(el.down('button'));
el.down('button') .focus();
}
},
scope: this
});
但是Ext.create和3个参数工作得很好,我从extjs文档“键盘导航”中获得了这段代码。你可以在这里查一下
var nav3 = Ext.create('Ext.util.KeyNav', {
target: Ext.getBody(),
enter: function(){
var el = Ext.FocusManager.focusedCmp;
if( el.getXType() == 'menuToolbar' ){
console.log(el.down('button'));
el.down('button') .focus();
}
},
scope: this
});