@ascold2013

Как обратиться ко всем контейнерам в js?

Здравствуйте! Такая проблема - хочу вывести 6 элементов в каждом списке контейнера. Следующий jquery код выводит элементы только в первом блоке. А в следующих нет. Как правильно сделать выборку, чтобы слайс отработал во всех блоках calculator_price?

//Разметка
<div class="calculator_price">
                    <ul class="calculator_price_list">
                        <li class="calculator_price__item title">...</li>
                        ...
                   </ul>
</div>
...
<div class="calculator_price">
...
//Jquery
$(".calculator_price").find(".calculator_price__item").slice(0, 6).css({display: 'flex'});
  • Вопрос задан
  • 183 просмотра
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
$('.calculator_price')
  .find('.calculator_price__item:lt(6)')
  .css('display', 'flex');

или

$('.calculator_price .calculator_price__item')
  .filter((i, n) => $(n).index() < 6)
  .css('display', 'flex');

или

document.querySelectorAll('.calculator_price').forEach(n => {
  [...n.querySelectorAll('.calculator_price__item')]
    .slice(0, 6)
    .forEach(n => n.style.display = 'flex');
});
Ответ написан
Комментировать
@nugget-ekb
Верстальщик
Если я правильно понял, то функция each должна тут помочь.

$('.calculator_price').each(function(){
	$(this).find(".calculator_price__item").slice(0, 6).css({display: 'flex'});
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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