Игнорировать DIV, если у него есть определенный класс - PullRequest
1 голос
/ 29 декабря 2011

У меня есть функция, которая находит все DIVS с классом boxes.Затем он удаляет класс visible.

Теперь я хочу, чтобы моя функция игнорировала любой DIV, если у него есть класс important.

Так что в основном, если мой DIV имеет только классы boxes и visiblevisible будет удалено.Но если у моего DIV есть классы boxes, visible и important, этот DIV останется один и visible не будет удален.

$(this).find('.boxes').removeClass('visible');

Я знаю, что это можно сделатьв выражении if, но мне было интересно, есть ли лучший способ сделать это с помощью jquery?

Ответы [ 5 ]

5 голосов
/ 29 декабря 2011

Вы хотите использовать селектор: not ():

$(this).find('.boxes:not(.important)').removeClass('visible');
4 голосов
/ 29 декабря 2011

Вы можете использовать :not(anotherSelector) в селекторе:

$(this).find('.boxes:not(.important)').removeClass('visible');

Другой способ - использовать .not():

$(this).find('.boxes').not('.important').removeClass('visible');
2 голосов
/ 29 декабря 2011
$(this).find('div.boxes:not(.important)').removeClass('visible');
1 голос
/ 29 декабря 2011

Используйте псевдоселектор :not():

$(this).find(".boxes.visible:not(.important)").removeClass("visible");
1 голос
/ 29 декабря 2011
$(this).find('.boxes:not(.important)').removeClass('visible');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...