За последние 24 часа нас посетили 21507 программистов и 1018 роботов. Сейчас ищут 689 программистов ...

Показать количество скрываемых элементов javascript

Тема в разделе "JavaScript и AJAX", создана пользователем Ivan707, 17 фев 2021.

  1. Ivan707

    Ivan707 Активный пользователь

    С нами с:
    15 ноя 2014
    Сообщения:
    8
    Симпатии:
    0
    Добрый вечер!

    Нижеприведенный код скрывает и показывает блоки с классом content-podr в блоке с классом conteiner.
    Подскажите пожалуйста, как можно изменить код, чтобы рядом с "Показать еще" показывалось количество скрытых по умолчанию элементов.

    Сейчас кнопка "Показать еще".
    А необходимо "Показать еще (тут число скрытых элемонтов)".

    Заранее спасибо!

    Код (Javascript):
    1. document.addEventListener("DOMContentLoaded", function() {
    2.     const on = (parent, event, selector, handler) =>
    3.     parent.addEventListener(event, ({target}) => {
    4.         if (target = target.closest(selector)) handler(target)
    5.     })
    6.     const fn = el => {
    7.         let parent = el.closest('.conteiner');
    8.         let content = parent.querySelector('.content-podr');
    9.         content.style.setProperty('--maxH', `${content.scrollHeight}px`);
    10.         parent.classList.toggle('active');
    11.     }
    12.     on(document, "click", ".collapsible", fn);
    13. });
    Код (CSS):
    1. .collapsible {
    2.     white-space: nowrap;
    3.     overflow: hidden;
    4.     text-overflow: ellipsis;
    5.     color: #8c8c8c;
    6. }
    7.  
    8. .collapsible:hover {
    9.     color: #00afff;
    10. }
    11. .content-podr {
    12.     max-height: 0;
    13.     overflow: hidden;
    14.     transition: max-height 0.2s ease-out;
    15. }
    16.  
    17. .conteiner.active .collapsible:after {
    18.     content: 'Свернуть условия \25B2';
    19. }
    20. .conteiner .collapsible:after {
    21.     content: 'Развернуть условия \25BC';
    22. }
    23. .conteiner.active .content-podr {
    24.     max-height: var(--maxH);
    25. }