Совсем недавно на мой блог BlogGood.ru пришел комментарий:
«… к примеру, есть 2 блока рядом, как сделать, чтобы при нажатии на второй, первый закрывался?»
Вы уж извините, что у моей статьи сегодня такое длинное и непонятное название. Другого заголовка для нее придумать я не смог. Остается надеяться, что написанное в статье будет понятным и полезным.
Итак, как сделать так, чтобы при нажатии на первый блок, второй блок исчезал? Или наоборот, при нажатии на второй блок, исчезал первый.
Добавьте в HTML вот такой код между тегами <body></body>:
<a onclick="hidetxt('div1'); return false;" href="#" rel="nofollow"><div class="blok"> Ссылка 1 </div></a> <div style="display:none;" id="div1">Текст 1</div> <a onclick="hidetxt('div2'); return false;" href="#" rel="nofollow"><div class="blok"> Ссылка 2 </div></a> <div style="display:none;" id="div2">Текст 2</div> <a onclick="hidetxt('div3'); return false;" href="#" rel="nofollow"><div class="blok"> Ссылка 3 </div></a> <div style="display:none;" id="div3">Текст 3</div>
Если хотите еще добавить блок, тогда вставьте вот такой код:
<a onclick="hidetxt('divххххххххххх'); return false;" href="#" rel="nofollow"><div class="blok"> Ссылка </div></a> <div style="display:none;" id="divххххххххххх">Текст</div>
В строке №1 и №4 вот эти иксы «ххххххххххх» замените таким числом, которое не встречается в верхних блоках.
Теперь CSS код:
.blok { border:1px solid #ccc; padding:10px; }
JavaScript код вставьте сразу после всех блоков или же между <head></head>:
<script> var show; function hidetxt(type){ param=document.getElementById(type); if(param.style.display == "none") { if(show) show.style.display = "none"; param.style.display = "block"; show = param; }else param.style.display = "none" } </script>
Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓
Последние новости категории:
Похожие статьи
Популярные статьи:
-
Как узнать id компьютера
Дата: 29 марта 2013
Прокомментировано:90
просмотров: 330330 -
Размеры форматов листов А0 – А7
Дата: 23 января 2013
Прокомментировано:3
просмотров: 274683 -
Смешные логические загадки с подвохом, отгадки прилагаются
Дата: 12 ноября 2014
Прокомментировано:5
просмотров: 222437 -
Готовые макеты блоков для веб-страниц на HTML и CSS
Дата: 25 июня 2014
Прокомментировано:23
просмотров: 187489 -
Установка windows 7 на ноутбук
Дата: 18 декабря 2012
Прокомментировано:169
просмотров: 186559
2 Ответов на комментарий - Как сделать, чтобы при нажатии на первый блок, второй закрывался
Добавить комментарий
Метки: javascript, Вебмастеру, для сайта
Меня все мучает реализация всяких JS плюшек без использования самого JS. Потому снова я влезу со своими 5-ю копейками…
Итак, “антиспойлер” с “обратным позиционированием”:
HTML:
CSS:
Для горизонтального размещения достаточно в вышеприведенном коде заменить все display на visibility с соответствующими им значениями (visible и hidden вместо block и none) и отступ для кнопки сделать не вертикальный, а горизонтальный (padding-top на padding-left)