@newaitix

Как выбрать 1, 2, 5 и 9 элементы в jquery?

<div class="menu">
<a>1</a>
<a>2</a>
<a>3</a>
<a>4</a>
<a>5</a>
<a>6</a>
<a>7</a>
<a>8</a>
<a>9</a>
</div>

Как выбрать 1, 2, 5 и 8 ссылку ?
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Где элементы находятся, и индексы тех, что надо получить:

const parentSelector = '.menu';
const indices = [ 0, 1, 4, 8 ];

Получаем:

const $elems = $(parentSelector).children().filter(i => indices.includes(i));

// или

const $elems = $(indices.map(n => `> :eq(${n})`).join(', '), parentSelector);

Или, к чёрту jquery:

const elems = Array.prototype.filter.call(
  document.querySelector(parentSelector).children,
  (n, i) => indices.includes(i)
);

// или

const elems = document
  .querySelector(parentSelector)
  .querySelectorAll(indices.map(n => `:scope > :nth-child(${n + 1})`));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы