То, что я пытаюсь сделать, это то, что я использую клавиши со стрелками, чтобы установить фокус на следующие / предыдущие вкладки. Я использую метод javascript .focus()
, чтобы установить фокус на элемент с помощью идентификатора.
Я получаю идентификатор активной вкладки, но мне нужно получить идентификаторы предыдущей и следующей вкладок ' так что я могу установить фокус. но я не могу получить идентификаторы предыдущей и следующей вкладок
я получаю Cannot read property 'id' of null
ошибку при попытке.
вот что я пробовал.
initEvents: function () {this.callParent (arguments);
var keyNav = new Ext.util.KeyMap({
target: this.el,
binding: [{
key: Ext.EventObject.LEFT,
fn: this.handleKeys.bind(this)
}, {
key: Ext.EventObject.RIGHT,
fn: this.handleKeys.bind(this)
}
],
scope: this
});
},
handleKeys: function(keyCode, event) {
var currentElement = event.getTarget(), targetEl = Ext.get(event.getTarget()),currentElementId = event.getTarget().id, nextElement = document.getElementById(currentElementId).nextElementSibling.id,previousElement = document.getElementById(currentElementId).previousElementSibling.id;
if (event.keyCode === Ext.EventObject.LEFT)
{
getElementById(previousElement).focus();
}
else if (event.keyCode === Ext.EventObject.RIGHT){
getElementById(nextElement).focus()
}
},
Пример вкладок здесь