У меня есть страница со многими элементами, к которым прикреплен один и тот же класс:
<div class="everyDiv"></div>
<div class="everyDiv"></div>
<div class="everyDiv"></div>
<div class="everyDiv"></div>
...
Я добавляю дополнительные классы на основе фильтров, которые пользователь выбирает, чтобы скрыть / отобразить их:
<div class="everyDiv hide1"></div>
<div class="everyDiv hide2"></div>
<div class="everyDiv hide3"></div>
<div class="everyDiv hide2 hide3"></div>
...
Теперь мне нужно выбрать диапазон (используя slice()
) из .everyDiv
элементов, которые НЕ имеют какой-либо из классов "скрытия" - .hide1 .hide2 .hide3
.
Как я могу сделать это с помощью jQuery?
Я безуспешно пробовал следующее:
$("div.everyDiv").not(".hide1").not(".hide2").not(".hide3").slice(n1, n2);
$("div.everyDiv:not(.hide1):not(.hide2):not(.hide3)").slice(n1, n2);
Это тоже не работает:
$("div.everyDiv:not(.hide1), div.everyDiv:not(.hide2), div.everyDiv:not(.hide3)").slice(n1, n2);
По сути, все классы "hide #" имеют CSS display: none;
, поэтому мне нужно выбрать указанный диапазон элементов div, которые не являются "скрытыми".