Задать вопрос
hadra
@hadra

Как упростить (заменить)

<div class="tv"><div class="date">1</div><div class="spoiler clear">Текст 1</div></div>
<div class="tv"><div class="date">2</div><div class="spoiler clear">Текст 2</div></div>
<div class="tv"><div class="date">3</div><div class="spoiler clear">Текст 3</div></div>
<script>
(function(){
    var active = null;
    var onclick = function() {
        var block = this.parentNode.querySelector('.spoiler');
        if (active !== null) {
            active.className += ' clear';
            if (active === block) {
                active = null;
                return;
            }
            active = null;
        }
        block.className = 'spoiler';
        active = block;
    }
    var togglers = document.querySelectorAll('.tv .date');
    for (var i = 0, toggler; toggler = togglers[i]; i++) {
        toggler.onclick = onclick;
    }
})();
</script>
  • Вопрос задан
  • 2423 просмотра
Подписаться 2 Оценить 3 комментария
Решения вопроса 1
hadra
@hadra Автор вопроса
решение найдено
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
MindMinimal
@MindMinimal
Front-end Developer, веб-разработчик
Если я Вас правильно понял, то Вам необходимо что-то на подобии https://jqueryui.com/accordion/
sandbox.scriptiny.com/javascript-accordion
www.p51labs.com/accordion
www.elated.com/articles/javascript-accordion - вот это должно помочь.
Ответ написан
Ваш ответ на вопрос

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

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