如何使用javascript获取上一个和下一个同级ID

问题描述 投票:0回答:1

我想做的是,我使用箭头键将焦点设置到下一个/上一个选项卡。我正在使用JavaScript .focus()方法将焦点设置为使用ID的元素。

我正在获取活动的标签ID,但是我需要获取上一个和下一个标签ID',以便我可以设置焦点。但我无法获取上一个和下一个标签页的ID]

我尝试时出现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()
    }
},

选项卡示例here

javascript extjs
1个回答
1
投票

如果我做对了,那就行得通

elem.previousSibling
elem.nextSibling
© www.soinside.com 2019 - 2024. All rights reserved.