Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Архив » Обновленный спойлер


Обновленный спойлер

Сообщений 241 страница 260 из 314

241

Caligula написал(а):

и ещё вопрос - имеет ли второй вариант спойлера какие-либо изъяны?

Есть плюсы - Изо и тексты скрыты изначально - уже при загрузке страницы, минусы - пока нет добавки своих слов вместо скрыть показать

0

242

Jem` написал(а):

Я так до сих пор и не понял отличие старого спойлера от нового.....

старый толще на 5 см.

0

243

Caligula
Ну для определения останков  :crazyfun:  Нужна ссылка

0

244

RUSSIAN_GOBLIN, спасибо за пост№230.  :cool:

0

245

И позвольте уж прямо здесь спросить (пока не знаю в какой теме обсуждается): есть ли скрипт "scroll", окно с прокруткой (как "код" здесь, но без слова "код")?

И скрипт "Прикрепить файл", чтобы его можно было тут же загрузить и тут же, с поста скачать. Есть ли такой и где можно посмотреть?

Спасибо!

0

246

Caligula, используй этот: Обновленный спойлер
из двух вариантов НТМЛ-низа, выбери второй.

Правда в нём есть недостаток - срабатывает в биби-коде кода: [ code ][ /code ]

Но если подождёшь максимум недельку, я напишу спойлер, который работает идеально: работает при пустых строках, и не срабатывает в би-би-коде кода.
Просто сейчас очень занят этим: API MyBB  :mybb:

0

247

Caligula написал(а):

ничего не менял пока что. код спойлера точно такой как запостил здесь в этой теме.

Оставлять нун тогда код

<!--Spoiler-->
<script type="text/javascript">
$(function(){
$("div.quote-box > cite > input.spoiler-button").click(function(){
$(this).parents("div.quote-box").find("blockquote.quote-box").toggle("normal");
var a = $(this).attr('value');$(this).attr('value',$(this).attr('id'));$(this).attr('id',a);
});});
$("div.post-content").map(function () {
text = $(this).html();
if(text.indexOf("[/spoiler]" ) != -1) {
spoilerr = /\[spoiler=(.*?)\]([^`]*?)\[\/spoiler\]/gi
$(this).html(text.replace(spoilerr, "<div class='quote-box' style='padding:1px;background: none;border: 0;'><cite style='width:100%;margin:0;'><input id='close' class='spoiler-button' style='width:140px;font-size:10px; margin:0; cursor: pointer; font-weight:bold' type='button' value='$1'></cite><blockquote class='quote-box' style='display:none; width:97%;border: 1px solid #88b5df;margin:0;'>$2</blockquote></div>"))
} });
</script>

0

248

Caligula написал(а):

Romych, этот вариант работает без изъянов? то есть при пропусках строк спойлер будет рабочим? и ещё: спойлеры от твоего "старого" скрипта будут работать с этим новым вариантом?
и если да, то, пожалуйста, убери из скрипта описание открытой кнопки. мне оно не нужно. нужно лишь описание закрытой.

Caligula
всё ещё актуально? или уже разобрался?

0

249

В общем, малость разобрался кто что написал/сделал (с первого раза на сообразил), посмотрел все  варианты спойлера.
В связи с этим, редакция поста № 252 (ато нечестно получается):
Спасибо Deffу за его вариант спойлера  :cool:
Спасибо RUSSIAN_GOBLINу за его вариант спойлера  :cool:
Спасибо Romychу за его вариант спойлера  :cool:
Все спойлеры рабочие и безглючные. Проверено в Мозилле и Опере.
Не знаю, что Вы там еще собираетесь дорабатывать и исправлять, но не сомневаюь, что после этого они станут еще лучше.

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

П.С. Жалко только, что никто так и не ответил про скрипты "scroll" и "Прикрепить файл" из поста 253. Из этого следует, что не судьба и работа над этими скриптами не планируется пока.   :)

Отредактировано Aleks-Maks (Сб, 17 Мар 2012 18:50:34)

0

250

Aleks-Maks
Скролл блок мон выполнить средствами  css - засовываете текст в цитату, либо в скрытый хайд,
css(ом) устанавливаете максимальную высоту и автоскролл

Прикрепить файл нет такой возможности на mybb кроме админки - регаетесь на gmail - там есть возможность установки хостинга хранения на форум, возможно кнопка там обычная, по типу "Отправить", но если будет установлено - легко переделываемо

Отредактировано Deff (Сб, 17 Мар 2012 19:06:02)

0

251

Эх, оффтопить так оффтопить...  :rofl:
Deff, спасибо!

Deff написал(а):

Прикрепить файл нет такой возможности на mybb кроме админки

тут все понятно  :yep:

Deff написал(а):

Скролл блок мон выполнить средствами  css - засовываете текст в цитату, либо в скрытый хайд,
css(ом) устанавливаете максимальную высоту и автоскролл

А тут понятно только что css - это каскадные таблицы стилей и  что мон засунуть текст в цитату, либо в скрытый текст. А как это сделать с помощью css, установить высоту и автоскролл - ни разу не понятно.  :rofl:  Понимаете, то что для Вас таблица умножения, то для меня тригонометрическая функция. :rofl:

0

252

Aleks-Maks написал(а):

В цитату. А как это сделать с помощью css, установить высоту и автоскролл - ни разу не понятно.

В HTML верх

<style>
.punbb .post-content .quote-box {
max-height:450px;
overflow-y:auto;
}
</style>

Отредактировано Deff (Сб, 17 Мар 2012 20:17:22)

0

253

Deff, спасибо! Все работает. Доведено до оптимального качества и не нуждается в каких-то дополнениях/доработках/переделках. Странно, что скролл не был до сих пор выделен в отдельную тему. Попробую исправить эту несправедливость.  :blush:

0

254

Не, не получается пока исправить эту несправедливость. Не имею прав создания темы.
Но скролл получается вот такой:

http://uploads.ru/t/8/O/y/8OyXe.png

Лучше и не надо.  :cool:

0

255

Aleks-Maks написал(а):

Лучше и не надо.

:D Двусмысленно

0

256

Deff написал(а):

:D  Двусмысленно

Объясню... У меня стоит Ваш спойлер, в версии RUSSIAN_GOBLINа из поста № 230.
Я протестил скролл не только в цитате, но и в спойлере. Так вот, в спойлере весь текст тоже оказался заскролленым, с прокруткой. Даже окошко оказалось шире. Проверял на большом тексте из скрина выше (правилах форума техподдержки).

Как говорится, от добра добра не ищут. И если что-то работает (а от себя добавлю, что хорошо работает), то переделывать не надо. Пусть так и остается!  :cool:

Отредактировано Aleks-Maks (Сб, 17 Мар 2012 21:39:04)

+1

257

Итак, не смотря на болезнь я занялся спойлером. И сделал его альфа-версию :)
Вобщем остался один мелкий глючок: он не работает между биби-кодов кода, т.е. в этом случае:

[code.]тут какой-то код[/code.]

описание

тут скрытое спойлером

[code.]и тут тоже какой-то код[/code.]

В HTML-верх это:

Код:
<style type="text/css">
#button-spoiler_r {background:url('http://img706.imageshack.us/img706/1943/spoiler.gif') no-repeat center !important;}
</style>
<script type="text/javascript">
FORUM.set('editor.spoiler_r', { name : 'Спойлер', onclick :  function() {tag_spolier()} } );
</script>

Если нужнен спойлер с описанием только открытой кнопки, в HTML-низ это:

Код:
<script type="text/javascript">
function tag_spolier()
{var FoundErrors = '';
var enterTITLE = prompt("Введите описание открытой кнопки", 'Спойлер');
bbcode('[spoiler='+enterTITLE+']','[/spoiler]');}

$(function(){
$('input.spoiler-button').live('click',function(){
$(this).parents('div.spoiler-box:first').find('blockquote.quote-box:first').toggle('normal');
var a = $(this).attr('value');$(this).attr('value',$(this).attr('id'));$(this).attr('id',a); });
});

var num_spl=0, num_spl2=0, post=0;
$('div.post-content').each(function (){
text = $(this).html(); post++;
if($('div.post-content').length==post-1) return false;
num_spl=text.indexOf("[/spoiler]"); num_spl2=num_spl;
if(num_spl != -1){

while(num_spl--){
text=text.replace(/<pre>([\s\S]*?)\[spoiler=(.*?)\]([\s\S]*?)\[\/spoiler\]([\s\S]*?)<\/pre>/gim,"<pre>$1[*spoiler=$2]$3[*spoiler]$4</pre>");}

text=text.replace(/\[spoiler=(.*?)\]([\s\S]*?)\[\/spoiler\]/gim, "<div class='spoiler-box' style='padding:1px;background: none;border: 0;'><input id='Закрыть' class='spoiler-button' style='width:auto;font-size:11px; margin:0; cursor: pointer; font-weight:bold' type='button' value='$1'><blockquote class='quote-box' style='display:none; width:auto;margin:0;'>$2</blockquote></div>");

while(num_spl2--){
text=text.replace(/<pre>([\s\S]*?)\[\*spoiler=(.*?)\]([\s\S]*?)\[\*spoiler\]([\s\S]*?)<\/pre>/gim,"<pre>$1[spoiler=$2]$3[/spoiler]$4</pre>");}

$(this).html(text);
}
}); 
</script>

Если нужнен спойлер с описанием обеих кнопок, в HTML-низ это:

Код:
<script type="text/javascript">
function tag_spolier()
{var FoundErrors = '';
var enterTITLE = prompt("Введите описание закрытой кнопки", 'Спойлер');
var enterTITLE2 = prompt("Введите описание открытой кнопки", 'Закрыть');
bbcode('[spoiler='+enterTITLE+'|'+enterTITLE2+']','[/spoiler]');}
$(function(){
$('input.spoiler-button').live('click',function(){
$(this).parents('div.spoiler-box').find('blockquote.quote-box').toggle('normal');
var a = $(this).attr('value');$(this).attr('value',$(this).attr('id'));$(this).attr('id',a); });});
var num_spl=0, num_spl2=0, post=0;
$('div.post-content').each(function () {
text = $(this).html(); post++;
if($('div.post-content').length==post-1) return false;
num_spl=text.indexOf("[/spoiler]"); num_spl2=num_spl;
if(num_spl != -1){

while(-1+num_spl--){
text=text.replace(/<pre>([\s\S]*?)\[spoiler=(.*?)\|(.*?)\]([\s\S]*?)\[\/spoiler\]([\s\S]*?)<\/pre>/gim,"<pre>$1[*spoiler=$2|$3]$4[*spoiler]$5</pre>");}

text=text.replace(/\[spoiler=(.*?)\|(.*?)\]([\s\S]*?)\[\/spoiler\]/gim, "<div class='spoiler-box' style='padding:1px;background: none;border: 0;'><input id='$2' class='spoiler-button' style='width:auto;font-size:11px; margin:0; cursor: pointer; font-weight:bold' type='button' value='$1'><blockquote class='quote-box' style='display:none; width:auto;margin:0;'>$3</blockquote></div>");

while(num_spl2--){
text=text.replace(/<pre>([\s\S]*?)\[\*spoiler=(.*?)\|(.*?)\]([\s\S]*?)\[\*spoiler\]([\s\S]*?)<\/pre>/gim,"<pre>$1[spoiler=$2|$3]$4[/spoiler]$5</pre>");}

$(this).html(text);
}
}); 
</script>

Romych и Deff, посмотрите на код и оцените безумную идею, благодаря которой, спойлер работает почти как надо  :idea:

0

258

RUSSIAN_GOBLIN
:D А вложенность работает ? Как у меня в  моём спойлере (Или используя код в посте 240 ?

+1

259

Deff, блин :( Вложенность не проверял. Сосредоточился только работе вне бб-кода кода и не работе в нутри блока кода.
Но и там не достиг успеха. В текущем варианте остался выбор - или будет работать между блоков кода и в блоке кода будет не рабоать только первый спойлер, или в блоке кода не будут работать любое кол-во спойлеров, но между блоками кода - аут.

Завтра перепишу код :)

0

260

RUSSIAN_GOBLIN
Ти можешь всунуть чисто в новосозданный тег >

<GOBLIN_TAG class(wlogennost_N>Тут что-то </GOBLIN_TAG>

и перепарсить потом в  jQuery

Отредактировано Deff (Ср, 21 Мар 2012 20:15:45)

0


Вы здесь » Единый форум поддержки » Архив » Обновленный спойлер