@booogabooo

Как сделать открытие/закрытие блока при нажатии?

Помогите, запутался в скриптах...
Вот сайт
В блоке "Последние диалоги" я пытаюсь реализовать открытие/закрытие двух типов сообщений: конференция и лс. Каждое должно скрывать другое. Реализованно очень криво, ооочень, соответственно и работает не правильно, помогите исправить + вместе с этим должен замещаться фон.цвет у блоков слева (появился у одного, пропал у другого, а не добавился к другому, как у меня). Уже голову переломал...

+ подскажите, были у меня табы (Диалоги, Альянс....), что-то сделал, теперь они не работают...в чем проблема?
  • Вопрос задан
  • 17686 просмотров
Пригласить эксперта
Ответы на вопрос 4
@Yadalay
Php, Mysql, Html, Css, Js/Jquery/Ajax, Laravel
Кода никакого Вы не предоставили, поэтому напишу простой пример, по которому поймёте смысл.
Html код:
<div id="dialog">Иконка или "диалог"</div>
<div class="content">
    Тут начальное содержимое Ваше.
</div>
<div class="test" style="display: none">
    Тут содержимое диалога
</div>

Jquery код:
$('#dialog').click(function(){
    $('.content').hide(); // Скрывает начальное содержимое.
    $('.test').show(); // Показывает содержимое диалога.
});

Или же, если у Вас всё разбито на шаблоны, то можно вместо show() и hide() использовать .load().
Если я, конечно, понял, что Вы имели в виду.
Ответ написан
Комментировать
soorax
@soorax
Веб дизайнер
<script type="text/javascript">

function openbox(id){
    display = document.getElementById(id).style.display;

    if(display=='none'){
       document.getElementById(id).style.display='block';
    }else{
       document.getElementById(id).style.display='none';
    }
}
</script>


<a href="#" onclick="openbox('box'); return false">Открыть</a>
<div id="box" style="display: none;">Отображаемый блок</div>
Ответ написан
Комментировать
@lega
Вот тоже самое что и у Pavel Demyanenko только без js! и jQuery (но с Angular Light).
Там все просто:
al-click="tab='b'" - при клике присвоить tab='b'
al-show="tab=='b'" - отобразить блок если tab == 'b'

Вам нужно попробовать какой-нибудь MV* фреймворк, с ними проще делать сложные приложения.
Ответ написан
Комментировать
xeLL
@xeLL
Fullstack web developer
Такая логика jsfiddle.net/p2wL5f54 ?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
18 нояб. 2024, в 23:44
5000 руб./за проект
18 нояб. 2024, в 23:13
10000 руб./за проект