Модуль «Спойлеры»

Привет! Этот контент доступен только подписчикам на патреоне с доступом
к стартовому шаблону "Чертоги Фрилансера" версия №3
Буду рад подписке на патреон:
Уже есть необходимый доступ на патреоне? Обнови страницу для получения доступа.
  • Vegy
    Автор: Vegy Добавлено 22 марта, 2022 в 22:09

    Херсон на связи!
    Привет!

    Підскажи будь-ласка, чому спойлери трохи стрибають при закритті?
    Записав відео, спробую відправити тобі за допомогою телеграма.

  • Павел
    Автор: Павел Добавлено 6 апреля, 2022 в 05:33

    Привет, Жека!
    Заметил неисправность: при клике вне спойлера исчезает контент ещё неинициированного спойлера, то есть который на текущем разрешении должен отображаться всегда. Сравнил со старой версией шаблона — там проверка условия была, но работала почему-то с ошибками. Попробовал добавить условие проверки инициализации внутри foreach — вроде всё ок:

    const spollersClose = document.querySelectorAll(‘[data-spoller-close]’);
    if (spollersClose.length) {
    document.addEventListener(«click», function (e) {
    const el = e.target;
    if (!el.closest(‘[data-spollers]’)) {
    spollersClose.forEach(spollerClose => {
    const spollersBlock = spollerClose.closest(‘[data-spollers]’);
    const spollerSpeed = spollersBlock.dataset.spollersSpeed ? parseInt(spollersBlock.dataset.spollersSpeed) : 500;
    if (spollersBlock.classList.contains(‘_spoller-init’)) {
    spollerClose.classList.remove(‘_spoller-active’);
    _slideUp(spollerClose.nextElementSibling, spollerSpeed);
    }

    });
    }
    });
    }

Лишити коментар