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 просмотра
Решения вопроса 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 - вот это должно помочь.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
26 апр. 2024, в 09:18
500 руб./в час
26 апр. 2024, в 06:46
1500 руб./в час
26 апр. 2024, в 05:31
1000 руб./за проект