jQuery селектор :only-of-type

Определение и применение

jQuery селектор :only-of-type выбирает каждый элемент, который является единственным дочерним элементом определённого типа внутри своего родительского элемента (отсутствует элементы такого же типа внутри родительского элемента).

Главное отличие jQuery селектора :only-child от jQuery селектора :only-of-type, заключается в том, что при использовании :only-of-type учитывается количество элементов одного типа, а при использовании jQuery селектора :only-child количество элементов (независимо каких типов).

jQuery синтаксис:

JavaScript
$("selector:only-of-type")

Добавлен в версии jQuery

1.9

Селектор в CSS

CSS псевдокласс :only-of-type.

Пример использования

Селектор :only-of-type — пример 1

Нажмите ▶. Измените JavaScript и запустите пример повторно. Используется jQuery 3.1.1.

index.html
HTML
<div>
  <h2>Заголовок второго уровня</h2>
  <p>Один абзац внутри блока</p>
</div>
<div>
  <h2>Заголовок второго уровня</h2>
  <p>Первый абзац внутри блока</p>
  <p>Второй абзац внутри блока</p>
</div>
main.js
JavaScript
$(document).ready(function () {
    $('p:only-of-type').css('background-color', 'yellow') // выбираем все элементы <p> в документе, которые являются единственными дочерними элементами определённого типа внутри своего родительского элемента.
})
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%;
}

В этом примере с использованием селектора :only-of-type мы выбираем все элементы <p> в документе, которые являются единственными дочерними элементами определённого типа внутри своего родительского элемента.

В нашем случае в роли родительских элементов выступают элементы <div>, и только первый из них содержит внутри себя единственный элемент <p> определённого типа, второй блок содержит два элемента такого типа.