jQuery: Как проверить, если элементы списка не имеют такой же атрибут, как моя переменная?

0

У меня есть список, и каждый элемент списка li имеет атрибут класса. Элементы списка, относящиеся к одной и той же проблеме, имеют один и тот же класс. Существует ползунок, в котором может отображаться только один элемент списка, и у меня есть счетчик, который возвращает мне индекс текущего слайда.

И есть еще один список со специальным контентом, и я хочу скрыть элементы списка, которые не имеют того же класса, что и текущий класс элементов слайдов.

Вот код:

var start_count = 0; //increases when clicking on next button
var current_slide_clid = $('.bxslider li').eq(start_count).attr('class'); // give me the class attribute of the currently displayed slide element
$('#clips li').attr('class').not(current_slide_clid).css('display', 'none'); // #clips is the other list with list elements i wanna hide

но это возвращает мне следующую ошибку:

TypeError: $ (...). Attr (...). Not не является функцией

Я попробовал несколько других селекторов, таких как:

$('#clips li:not([current_slide_clid])'); 

или:

$('#clips li').attr('class').not(current_slide_clid);

но все они не работали. Итак, как я могу выбрать элементы списка, которые не соответствуют моему текущему классу слайдов? Есть идеи?

С уважением

Теги:
list
selector

1 ответ

3
Лучший ответ

должен быть

$('#clips li').not('.'+current_slide_clid);

или

$('#clips li:not(.' + current_slide_clid + ')'); 

$('#clips li').attr('class') возвращает атрибут класса элемента, который является строковым значением, не имеет .not()

  • 0
    Большое спасибо!!! Работал! :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню