Как посчитать количество классов?

#javascript #twig #drupal-8

#javascript #twig #drupal-8

Вопрос:

На моей странице у меня есть несколько блоков, в некоторых есть класс task-success , а в других есть class task-alert .

Как добавить класс task-alert в меню, если класс task-danger присутствует на странице?

Мне удалось сделать это с помощью приведенного ниже JS-кода. Но класс добавляется в ссылку меню, только если я нахожусь на странице (странице, содержащей task-danger класс). Если я меняю страницы, класс не добавляется в ссылку меню.

Цель состоит в том, чтобы отобразить ссылку меню, когда task-danger присутствует. Возможно, есть способ отобразить количество классов task-danger .

 (function ($) {
  'use strict';

  if ($(".view-boutique-page-liste-des-taches .task-danger").length) {
    $("#navbar-collapse-first .task").addClass("task-alert");
  };

}(jQuery));
  

введите описание изображения здесь

Идеальным было бы отображать количество каждого класса :

введите описание изображения здесь

Комментарии:

1. Хотя в чистом виде это невозможно twig

2. Что вы будете делать с информацией о количестве классов? Рассматривали ли вы возможность использования JavaScript в поведении Drupal и запуска этой логики в браузере?

3. @stacey.mosier как я могу это сделать с помощью JS?

4. @stacey.mosier Я обновил свой вопрос

5. var i = 0; $("#navbar-collapse-first .task").each(function( index ) { i }); выдаст вам общее количество. Но я не знаю, сработает ли это для вас.