【发布时间】:2014-05-03 06:28:42
【问题描述】:
我有一个包含两个网格的面板,这两个网格都可以使用单元格编辑插件进行编辑。在网格内,用户可以使用 tab 键在可编辑字段之间移动。但是,我似乎找不到正确的方法来获取 tab 键以允许用户从第一个网格中的最后一个可编辑单元格移动到第二个网格中的第一个可编辑单元格(两个网格之间没有组件)。用户只是停留在第一个网格的最后一个可编辑字段中。
我尝试使用 FocusManager,但这使得键盘导航更加复杂,而不是更少,需要使用箭头键进入和退出每个表单元素和网格。
我将此代码添加到父面板:
var nav = new Ext.util.KeyNav(Ext.getDoc(), {
tab: function(e) {
console.debug('TAB HIT!', arguments);
},
scope: this
});
nav.enable();
只是为了查看检测到哪些选项卡,但它仅在单击选项卡键并且父面板本身中的表单元素具有焦点时才会激活。
我想我需要学习一些元素,如何将焦点从一个元素传递到另一个元素,以及如何检测网格中的第一个和最后一个元素?或者有什么方法可以在 ExtJS 中内置?任何建议或意见将不胜感激。
【问题讨论】:
-
我查看了那个插件,但它仍然没有提供我需要的功能。如果我在页面中放入两个面板(例如,只是复制 JSFiddle 中示例中的面板),当我到达第一个面板的最后一个单元格时,我不能从键盘选项卡到第二个面板的第一个单元格面板。
标签: javascript extjs keyboard-navigation