Страница 1 из 1
Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 19:42
taimyr
Давно интересуюсь, почему в BB Code форума не работает тэг Spoiler (скрытие части текста, рисунков и т.д в отдельный раскрывающийся блок)? Вообще на многих форумах прятать картинки под спойлер считается хорошим тоном, а кое-где это даже за пользователя само делается

Часто уместно бывает, например, в первом сообщении темы оставить только суть, а подробности вывести под спойлер...
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 20:03
Максим Дубинин
Добавил кнопку спойлер.
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 20:04
Максим Дубинин
Тест спойлера
Тут текст
Тут код
Тут картинка

Надо только придумать что вместо spoiler и show поставить.
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 20:16
taimyr
Вообще-то в идеале должно работать так :
СОДЕРЖИМОЕ
Но если пока не получается, то замена - spoiler - "скрытый текст", show - "читать далее"
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 20:46
Максим Дубинин
то есть "свой заголовок" вместо слова Спойлер, так?
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 20:47
taimyr
Именно так
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 20:48
Максим Дубинин
Еще один тест спойлера с заданным текстом.
Текст
Re: Тэг Spoiler на форуме
Добавлено: 12 окт 2010, 21:01
Максим Дубинин
Вопрос к знатокам JS, добавить TEXT1 я сумел, а вот как добавить условие в bbcode, что если TEXT1='' then TEXT1='Спойлер' - не знаю
Сейчас так:
Код: Выделить всё
<div style="padding: 3px; background-color: #FFFFFF; border: 1px solid #d8d8d8; font-size: 1em;"><div style="text-transform: uppercase; border-bottom: 1px solid #CCCCCC; margin-bottom: 3px; font-size: 0.8em; font-weight: bold; display: block;"><span onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerHTML = '<a href=\'#\' onClick=\'return false;\'>{TEXT1}</a>'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerHTML = '<a href=\'#\' onClick=\'return false;\'>{TEXT1}</a>'; }" /><a href="#" onClick="return false;">{TEXT1}</a></span></div><div class="quotecontent"><div style="display: none;">{TEXT2}</div></div></div>
Нужно обрабатывать ситуацию, когда человек ткнул в спойлер но ничего не ввел после =
Re: Тэг Spoiler на форуме
Добавлено: 13 окт 2010, 11:20
Mavka
Ммм... хочешь узнать пустая строка или нет? И не срабатывает условие str=''?
Тогда сравнивай по длине - str.len()=0.
Re: Тэг Spoiler на форуме
Добавлено: 14 окт 2010, 00:59
Максим Дубинин
Я не совсем понимаю как вместо {TEXT1}, например вот здесь:
Код: Выделить всё
this.innerHTML = '<a href=\'#\' onClick=\'return false;\'>{TEXT1}</a>';
подставить такую проверку.
Re: Тэг Spoiler на форуме
Добавлено: 21 окт 2010, 12:04
Mavka
Сделай как с тэгом [quote]. Там тоже можно поставить "=". Т.е. изначально по кнопке вставляется просто "spoiler", а если умные людишки поставили "=", то пусть сами и думают зачем они это сделали.