使用jquery从数组更改目标元素的类

Rob*_*Rob 1 javascript arrays jquery attr

我有一个li我使用的元素列表.toArray().我现在需要循环遍历它们以找到所需的元素并更改其样式类.

我不确定我做错了什么,但我似乎无法获得索引项的类,但我可以检索innerHTML没问题.

var viewsIndex = $('#viewsList li').toArray()
        for(i=0; i < viewsIndex.length; i++) {
            if(viewsIndex[i].innerHTML == selectedTab) {

                console.log(viewsIndex[i].attr('style')); //This does NOT work
                console.log(viewsIndex[i].innerHTML); //This does work
            }
            else
            {


            }
        }
Run Code Online (Sandbox Code Playgroud)

一旦我定位元素,我想使用.removeClass.addClass更改样式.

gdo*_*ica 5

这是没有jQuery函数的DOM对象:

viewsIndex[i]
Run Code Online (Sandbox Code Playgroud)

这是具有以下attr功能的jQuery对象:

$(viewsIndex[i]).attr('style')
Run Code Online (Sandbox Code Playgroud)

无论如何,你的代码可以更简单:

$('#viewsList li').filter(function(){
    return this.innerHTML == selectedTab;
}).removeClass('foo').addClass('bar');
Run Code Online (Sandbox Code Playgroud)