Javascript $(选择器)在Ext 3中等效

Javascript $(选择器)在Ext 3中等效,javascript,extjs,Javascript,Extjs,我有一个菜单组件,我试图通过在单击时添加一个类并从所有菜单项中删除该类来选择所选的链接,然后再将其添加到新单击的链接中 因此,我只需查找父组件并查询它以查找所有锚。然后,我尝试chx所有锚的类,并删除所选类的一个/多个 var anchors = component.el.query("a"); Ext.iterate(anchors, function(anchor, i){ anchor.removeClass('selected'); }); this.el.addClass('selec

我有一个菜单组件,我试图通过在单击时添加一个类并从所有菜单项中删除该类来选择所选的链接,然后再将其添加到新单击的链接中

因此,我只需查找父组件并查询它以查找所有锚。然后,我尝试chx所有锚的类,并删除所选类的一个/多个

var anchors = component.el.query("a");
Ext.iterate(anchors, function(anchor, i){
anchor.removeClass('selected');
});
this.el.addClass('selected');
不起作用。然而:

var anchors = component.el.query("a");
Ext.iterate(anchors, function(anchor, i){
$(anchor).removeClass('selected');
});
this.el.addClass('selected');
确实有效。
Ext native等效于什么来实现这一点?

使用extjs3,您的锚[index]将返回该特定节点的HTML。要使用addClass或removeClass,您需要使用anchors.itemindex

类似这样的方法会奏效:

Ext.onReady(function(){
    var div = Ext.get('test'),
        anchors = div.select("a"),
        linkChangeClass = function (anchors, anchor) {
            var index = anchors.indexOf(anchor);
            anchors.removeClass('selected');
            anchors.item(index).addClass('selected');
        };

    anchors.on('click', function() {
        linkChangeClass(anchors, this);
    });
});
小提琴: