jQuery селектор отрицания :not
Определение и применение
jQuery селектор отрицания :not позволяет выбрать элементы отличные от указанных. Селектор отрицания используется вместе с другим селектором, чтобы выбрать все элементы, кроме указанных в селекторе.
jQuery синтаксис:
JavaScript
$( "selector:not(selector)" )
В CSS и jQuery можно использовать одинаковое условие внутри :not():
Код
CSS:
a:not(:last-child) {
блок объявлений;
}
jQuery:
$( "a:not(:last-child)" ) // повторять селектор a внутри :not() не нужно
Добавлен в версии jQuery
1.0Селектор в CSS
CSS селектор :not (псевдокласс отрицания).Пример использования
Селектор отрицания :not — пример 1
Нажмите ▶. Измените JavaScript и запустите пример повторно. Используется jQuery 3.1.1.
index.html
HTML
<p>Первый абзац</p>
<p class="test">Второй абзац</p>
<p>Третий абзац</p>
main.js
JavaScript
$(document).ready(function () {
$('p:not(p:first-child)').css('color', 'red') // выбирает и стилизует все элементы <p>, за исключением тех, которые являются первым дочерним элементом своего родителя
$('p:not(.test)').css('text-decoration', 'underline') // выбирает и стилизует все элементы <p>, за исключением тех, которые имеют класс test
})
style.css
CSS
body {
margin: 16px;
font:
16px/1.5 system-ui,
sans-serif;
overflow-wrap: anywhere;
}
img,
input,
select,
textarea,
button {
max-width: 100%;
}
p:not(:first-child) {
/* выбирает все элементы <p>, за исключением тех, которые являются первым дочерним элементом своего родителя */
font-weight: bold; /* определяет жирное начертание символов */
}
Режим чтения
Нажмите ▶, чтобы запустить пример.
В этом примере мы:
-
С использованием CSS селектора отрицания
селектор :not
выбрали все элементы
<p>, за исключением тех, которые являются первыми дочерними элементами своего родителя. В нашем случае это первый абзац и стилизовали установив жирное начертание символов второму и третьему абзацу. -
С использованием jQuery селектора отрицания :not выбрали и стилизовали (цвет текста красный) все элементы
<p>, за исключением тех, которые являются первыми дочерним элементами своего родителя (в нашем случае первый абзац). Селекторp:not(:first-child)работает без повторенияpвнутри:not(). -
С использованием jQuery селектора отрицания :not выбрали и стилизовали (декорирование текста - нижнее
подчеркивание) все элементы
<p>, за исключением тех, глобальный атрибутclassкоторых, имеет значение"test".