Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/72: Рейтинг темы: голосов - 72, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 28.10.2012
Сообщений: 86

Спойлер на html

28.10.2012, 18:53. Показов 15271. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, мне нужно что б при нажатии любого из блоков ( на изображении) открывался текст. Как это можна осуществить?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.10.2012, 18:53
Ответы с готовыми решениями:

js html спойлер отладка
Доброго дня! Прошу помочь разобраться с работой спойлера. Проблема в функционировании: при открытии начиная с нижних пунктов и...

HTML спойлер - несколько штук на страницу - работает только первый
Всем привет. Подскажите, пожалуйста, есть код спойлера, есть 5 пунктов на сайте, которые я хочу убрать под спойлер, каждый под свой....

"спойлер" javascript на html
Здравствуйте. Как сделать так, или как нужно закрывать, либо что вводить в javascript чтобы он отличался. Обьясню на примере. ...

6
Почетный модератор
12274 / 5340 / 268
Регистрация: 05.04.2011
Сообщений: 14,086
Записей в блоге: 2
28.10.2012, 19:27
Лучший ответ Сообщение было отмечено как решение

Решение

Это называется "Спойлер" пример http://my.opera.com/AntonDiaz/... l/14717502
3
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,531
29.10.2012, 11:10
Цитата Сообщение от Taatshi Посмотреть сообщение
Это называется "Спойлер" пример...
не кроссбраузерно, не валидно, блочный элемент в строчном, а тут лишний display: block;, зачем он, если есть флоат, и тут буквочек не хватает ракрытия
CSS
1
2
3
4
5
6
a.spoiler:before {
    content: "[кликнуть для ракрытия]";
    display: block;
    float: right;
    font-size: smaller;
    font-weight: normal; }
теперь быстренько вспоминаем что css3 пока ещё не существует в природе



на JS, кроссбраузерно, сделано на основе и по мотивам выше приведенной ссылки
украшательства это ваши проблемы

любое количество
в качестве недостатка, сложно динамически изменить количество
Кликните здесь для просмотра всего текста

HTML5
1
2
3
4
<dl class="spoiler">
<dt>Заголовок</dt>
<dd>Содержимое спойлера. Здесь может находиться очень длинный текст (например, HTML-код или содержимое файла), который нужно спрятать. Спойлер позволяет не превращать пост в простыню, что улучшает читабельность. Также его можно использовать для того, чтобы не показывалось сразу же нежелательное содержимое (например, картинки из категории «не для слабонервных», «не для детей»). Короче говоря, «у этой штуки 999 назначений, и самое главное — придумать все эти назначения»</dd>
</dl>
CSS
1
2
3
4
5
6
7
8
.spoiler {border-radius:7px; border:1px solid blue; background:lavender;}
.spoiler {cursor:pointer; margin:5px 0;}
/*.spoiler:hover {background:lavenderblush;}*/
.spoiler dt:hover {background:lavenderblush; border-radius:12px;}
.spoiler dt {margin:3px; padding:2px 0 5px 9px;}
.spoiler dd {display:none; border-radius:7px; border:1px solid blue;}
.spoiler dd {margin:0 9px 7px 33px; padding:7px; text-align:justify;}
.spoiler dd {background:lavender;}
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
onload=function(){
var m, k;
m=document.getElementsByTagName("dl");
k=m.length;
while(k--){if(m[k].className=="spoiler"){m[k].onclick=clickSpoiler;}};
 
 };
 
function clickSpoiler(){//клик по dl, dt, dd
var m, k, s;
s=this.getElementsByTagName("dd")[0].style.display;
m=document.getElementsByTagName("dl");
k=m.length;
while(k--){
if(m[k].className=="spoiler"){
m[k].getElementsByTagName("dd")[0].style.display="none";}};
if(s=="none"||s==""){
this.getElementsByTagName("dd")[0].style.display="block";};
 
 };



любое количество с возможностью динамического изменения количества
в качестве недостатка, клики нужно прописывать в html
Кликните здесь для просмотра всего текста

HTML5
1
2
3
4
<dl class="spoiler" onclick="clickSpoiler(this);">
<dt>Заголовок</dt>
<dd>Содержимое спойлера. Здесь может находиться очень длинный текст (например, HTML-код или содержимое файла), который нужно спрятать. Спойлер позволяет не превращать пост в простыню, что улучшает читабельность. Также его можно использовать для того, чтобы не показывалось сразу же нежелательное содержимое (например, картинки из категории «не для слабонервных», «не для детей»). Короче говоря, «у этой штуки 999 назначений, и самое главное — придумать все эти назначения»</dd>
</dl>
CSS
1
2
3
4
5
6
7
8
.spoiler {border-radius:7px; border:1px solid blue; background:lavender;}
.spoiler {cursor:pointer; margin:5px 0;}
/*.spoiler:hover {background:lavenderblush;}*/
.spoiler dt:hover {background:lavenderblush; border-radius:12px;}
.spoiler dt {margin:3px; padding:2px 0 5px 9px;}
.spoiler dd {display:none; border-radius:7px; border:1px solid blue;}
.spoiler dd {margin:0 9px 7px 33px; padding:7px; text-align:justify;}
.spoiler dd {background:lavender;}
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
function clickSpoiler(el){//клик по dl, dt, dd
var m, k, s;
s=el.getElementsByTagName("dd")[0].style.display;
m=document.getElementsByTagName("dl");
k=m.length;
while(k--){
if(m[k].className=="spoiler"){
m[k].getElementsByTagName("dd")[0].style.display="none";}};
if(s=="none"||s==""){
el.getElementsByTagName("dd")[0].style.display="block";};
 
 };




любое количество с возможностью динамического изменения количества
в качестве недостатка, единственный клик навешен на документ
Кликните здесь для просмотра всего текста

HTML5
1
2
3
4
<dl class="spoiler">
<dt>Заголовок</dt>
<dd>Содержимое спойлера. Здесь может находиться очень длинный текст (например, HTML-код или содержимое файла), который нужно спрятать. Спойлер позволяет не превращать пост в простыню, что улучшает читабельность. Также его можно использовать для того, чтобы не показывалось сразу же нежелательное содержимое (например, картинки из категории «не для слабонервных», «не для детей»). Короче говоря, «у этой штуки 999 назначений, и самое главное — придумать все эти назначения»</dd>
</dl>
CSS
1
2
3
4
5
6
7
8
.spoiler {border-radius:7px; border:1px solid blue; background:lavender;}
.spoiler {cursor:pointer; margin:5px 0;}
/*.spoiler:hover {background:lavenderblush;}*/
.spoiler dt:hover {background:lavenderblush; border-radius:12px;}
.spoiler dt {margin:3px; padding:2px 0 5px 9px;}
.spoiler dd {display:none; border-radius:7px; border:1px solid blue;}
.spoiler dd {margin:0 9px 7px 33px; padding:7px; text-align:justify;}
.spoiler dd {background:lavender;}
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
document.onclick=function(ev){//клик где то по документу
var obj=ev?ev.target:event.srcElement;//остальные или ИЕ
//в цикле просматриваем все теги, от тега по которому щёлкнули до тега HTML.
while(obj.parentNode){//если нет, то вышли за пределы HTML
if(obj.className=="spoiler"){break;}//если попался нужный элемент
else{obj=obj.parentNode;}};//иначе ищем дальше
//на выходе из цикла проверяем где вышли
if(obj.className=="spoiler"){
clickSpoiler(obj);
return false;};
//если не спойлер, значит кликнули мимо
closet();
 };
 
function clickSpoiler(el){//клик по dl, dt, dd
var s=el.getElementsByTagName("dd")[0].style.display;
closet();
if(s=="none"||s==""){//открыть по которому кликнули
el.getElementsByTagName("dd")[0].style.display="block";};
 };
 
function closet(){//закрываем все не глядя
var m, k;
m=document.getElementsByTagName("dl");
k=m.length;
while(k--){
if(m[k].className=="spoiler"){
m[k].getElementsByTagName("dd")[0].style.display="none";}};
 };
1
29.10.2012, 11:25

Не по теме:

newJS, "пример" означает - посмотри принцип ;)

0
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
29.10.2012, 13:53
newJS, JavaScript, конечно, хорошо, но тут вроде как html/css.
Кстати, некоторые сойства CSS3 уже реализованы, хоть IE и слоупочит...

Приведенный Taatshi пример спойлера вполне кросбраузерен. Для ИЕ правда придеться использовать другой стиль, но в остальных браузерах работает (чтобы заработало в хроме нужно к тегу <а> добавить атрибут tabindex="1").
В качестве простого примера пойдет
2
0 / 0 / 0
Регистрация: 05.10.2019
Сообщений: 9
05.10.2019, 23:33
на JS, кроссбраузерно, сделано на основе и по мотивам выше приведенной ссылки
украшательства это ваши проблемы

любое количество
в качестве недостатка, сложно динамически изменить количество
Кликните здесь для просмотра всего текста



любое количество с возможностью динамического изменения количества
в качестве недостатка, клики нужно прописывать в html
Кликните здесь для просмотра всего текста




любое количество с возможностью динамического изменения количества
в качестве недостатка, единственный клик навешен на документ
Кликните здесь для просмотра всего текста
newJS вне форума Обратить внимание администрации на это сообщение 0
Здраствуйте! А как сделать, чтоб сполер сворачивался также по клику заголовка. А то если в теле сполера ю
будут формы для ввода данных, ни чего не будет работать
0
Фрилансер
Эксперт PythonЭксперт JSЭксперт PHP
 Аватар для Azdeman
1871 / 1362 / 604
Регистрация: 12.01.2011
Сообщений: 5,470
06.10.2019, 16:48
Цитата Сообщение от dittor Посмотреть сообщение
Здраствуйте! А как сделать, чтоб сполер сворачивался также по клику заголовка. А то если в теле сполера ю
будут формы для ввода данных, ни чего не будет работать
Создавайте новую тему а не спрашивайте в существующей уже как лет 7.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.10.2019, 16:48
Помогаю со студенческими работами здесь

HTML спойлер
Всем привет. Подскажите как сделать , что-бы вместо текста Свернуть и развернуть была картинка? Вот код: &lt;div...

Спойлер на html
Здравствуйте, подскажите как сделать так, чтобы при нажатии на &quot;HTML-код для блогов и страниц&quot; появлялся код ниже? Что то типо...

Спойлер на HTML + CSS
Помогите: &lt;html&gt; &lt;head&gt; &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;&gt; &lt;link rel=&quot;icon&quot;...

Спойлер
Как написать ссылку, по нажатию на которую под ней отобразится абзац текста, а по повторному клику исчезнет.

Спойлер на JS
Есть два спойлера: function ShowOrHide(a){var...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru