Deff
Пасиб Вам, но не помогло.
Изменения в форме ответа
Сообщений 841 страница 860 из 1000
Поделиться841Пн, 26 Мар 2012 18:43:29
Поделиться842Пн, 26 Мар 2012 22:07:06
Еще Вариант Спойлера с вводом одного названия и минималистической Иконкой
В HTML верх
<!--Спойлер--> <style type="text/css"> /*Спойлер */ .punbb .quote-box.spoiler-box{ border:#ccc 1px solid; border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px; -moz-border-radius:5px; -o-border-radius:5px; } .post-content .spoiler-box > div { background: url(http://uploads.ru/i/d/A/w/dAw4B.gif) 0% 4px no-repeat transparent; padding-left: 18px; } .post-content .spoiler-box > div.Active { background: url(http://uploads.ru/i/Z/Q/s/ZQsJP.gif) 0% 4px no-repeat transparent; padding-left: 18px; } .post-content .spoiler-box > blockquote.visible { display: none;}.punbb .spoiler-box blockquote { min-width: 100%!important; } .post-content .spoiler-box span.hide{ display:none; } #button-spoiler { background: url('http://uploads.ru/i/A/I/F/AIFqG.gif') no-repeat center !important; } </style> <script type="text/javascript"> function tag_spolierr(){ var enterTITLE = prompt("Введите описание спойлера", 'Спойлер'); var enterTITLE2 = 'Закрыть'; bbcode('[spoiler='+enterTITLE+'|'+enterTITLE2+']','[/spoiler]'); } </script> <script type="text/javascript"> $(document).ready(function(){ a='<img onclick="tag_spolierr()" title="spoiler" src="/i/blank.gif"/>' $("#form-buttons td#button-spoiler img").replaceWith(a); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").each(function() { $(this).html('<p type=text style="margin:0 0 -6px 0;">'+$(this).html().replace(/(.*)?\|(.*)?/img,'<span class="visible">$1</span><span class="hide">$2</span>')+'</p>') }); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").live("click", function(){ $(this).toggleClass("Active") $(this).next('blockquote').toggle('Slow'); $(this).find('span:eq(0),span:eq(1)').toggleClass('hide').toggleClass('visible'); }); }); </script> <!-- Правки для спойлера сервиса НТML верх-->
Отредактировано Deff (Пн, 26 Мар 2012 22:11:14)
Поделиться843Вт, 27 Мар 2012 03:34:50
А подскажите пожалуйста.
Помимо нового встроенного на форуме спойлера, у меня еще стоит скрипт.
И произошло что-то странное, где-то он заменился тегами нового спойлера назвав кнопку "свернутый текст", где-то нет (остался старым как было в скрипте).
Пример под кнопкой правила
http://greenwoodshi.3bb.ru/viewtopic.ph … 27#p199762
Как сделать чтоб все теги спойлера везде давали новый результат.
upd
а безскрипта спойлер в спойлере не работает??? Сделайте плиз чтоб работал, очень-очень надо.
проверка
...
Отредактировано Иса (Вт, 27 Мар 2012 03:47:35)
Поделиться844Вт, 27 Мар 2012 08:32:34
Иса
Вариант без траблов
1. Убрать Ваш код спойлера
<style type="text/css"> #button-spoiler {background-image:url('http://forumupload.ru/uploads/0000/12/13/488-1.gif'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat} </style> <script> function addSpoiler(str,from,internal){ var pos=0,pos2=0,newpos=0 if((pos=str.indexOf("[spoiler]",from))==-1) return str; if((pos2=str.indexOf("[/spoiler]"),pos+9)==-1) return str; newpos=str.indexOf("[spoiler]",pos+9) if(newpos<pos2 && newpos!=-1) str=addSpoiler(str,pos+9,true) if((pos2=str.indexOf("[/spoiler]",pos+9))==-1) return str; str=str.substring(0,pos)+makeSpoiler(str.substring(pos+9,pos2))+str.substring(pos2+10,str.length) if( str.indexOf("[spoiler]")!=-1 && internal==false) str=addSpoiler(str,0,false) return str} function makeSpoiler(txt){ txt="<div class=quote-box style='padding:4px'><cite style='width:100%'><input style='width:40px; margin-left:91%;font-size:11px;color:#222222;'type='button' value='open' onclick='hideSpoiler(this)'></cite><blockquote style='display:none'>"+txt+"</blockquote></div>" return txt} function hideSpoiler(sp){ spoiler=sp.parentNode.parentNode.getElementsByTagName("blockquote")[0] if(spoiler.style.display=='none'){ spoiler.style.display='inline' sp.value='close'} else{ spoiler.style.display='none' sp.value='open'}} if(document.URL.indexOf("viewtopic.php")!=-1){ elm=document.getElementById("pun-main").getElementsByTagName("div") for(x in elm) if(elm[x].className=="post-content"){ var post=elm[x] post.innerHTML=addSpoiler(post.innerHTML,0,false)}} if(form=document.getElementById("form-buttons")) form.getElementsByTagName("tr")[0].insertCell(19).innerHTML="<img id=\"button-spoiler\" title=\"Spoiler\" onclick=\"bbcode('[spoiler]','[/spoiler]')\" src=\"/i/blank.gif\" />" </script>
2. Поставить, к примеру, предыдущий код - Пост 8423. Поиском, найти старые теги таким запросом в Поиске *[spoiler]*
и заменить на [spoiler="Показать текст|Скрыть"]
(Опыт Показал - 120 тегов на трех -летнем форе - заменяются за час
(* Реализовано сервисом, см пост 846
Отредактировано Deff (Вт, 27 Мар 2012 09:42:29)
Поделиться845Вт, 27 Мар 2012 09:18:01
И всё. После этих действий у меня всё работает
Спасибо за кнопочку, а то чуть не разбомбил весь свой форум
Поделиться846Вт, 27 Мар 2012 09:31:29
Добавлена поддержка тега [spoiler] без описания (для совместимости со старыми топиками).
Иса
Вложенные спойлеры снова работают.
Поделиться847Вт, 27 Мар 2012 09:51:14
Еще Вариант Спойлера с вводом одного названия и минималистической Иконкой
Хорошо работает. Не конфликтует с интегрированным в движок спойлером. То есть, даже после удаления этого скрипта, информация спрятанная под спойлер, там же, под спойлером (только движковым) и остается.
Поделиться848Вт, 27 Мар 2012 10:28:50
Добавлена поддержка тега [spoiler] без описания (для совместимости со старыми топиками).
Ура! ^__^
Значит теперь обход через цензуру можно убрать!)
Поделиться849Вт, 27 Мар 2012 12:12:01
Еще Вариант Спойлера
Супер - теперь всё как надо, спасиб огромное.
Поделиться850Вт, 27 Мар 2012 14:01:31
Admin
Супер! ++++++
Поделиться851Вт, 27 Мар 2012 14:14:35
Admin
спасибо!
Поделиться852Вт, 27 Мар 2012 14:21:18
Добавлена поддержка тега [spoiler] без описания (для совместимости со старыми топиками).
Здорово, пасиб))
Поделиться853Вт, 27 Мар 2012 14:26:31
не сочтите занудой, но можно как-то заменить слова "свернутый текст" на свои у неподписанного спойлера?
цензура не помогла
Отредактировано Иса (Вт, 27 Мар 2012 14:26:51)
Поделиться854Вт, 27 Мар 2012 14:38:30
Иса написал(а):не сочтите занудой, но можно как-то заменить слова "свернутый текст"
<!--Спойлер--> <style type="text/css"> /*Спойлер */ .punbb .quote-box.spoiler-box{ border:#ccc 1px solid; border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px; -moz-border-radius:5px; -o-border-radius:5px; } .post-content .spoiler-box > div { background: url(http://uploads.ru/i/d/A/w/dAw4B.gif) 0% 4px no-repeat transparent; padding-left: 18px; } .post-content .spoiler-box > div.Active { background: url(http://uploads.ru/i/Z/Q/s/ZQsJP.gif) 0% 4px no-repeat transparent; padding-left: 18px; } .post-content .spoiler-box > blockquote.visible { display: none;}.punbb .spoiler-box blockquote { min-width: 100%!important; } .post-content .spoiler-box span.hide{ display:none; } #button-spoiler { background: url('http://uploads.ru/i/A/I/F/AIFqG.gif') no-repeat center !important; } </style> <script type="text/javascript"> function tag_spolierr(){ var enterTITLE = prompt("Введите описание спойлера", 'Спойлер'); var enterTITLE2 = 'Закрыть'; bbcode('[spoiler='+enterTITLE+'|'+enterTITLE2+']','[/spoiler]'); } </script> <script type="text/javascript"> MyWord='Спойлер' //Замена фразы:"Свернутый текст" $(document).ready(function(){ a='<img onclick="tag_spolierr()" title="spoiler" src="/i/blank.gif"/>' $("#form-buttons td#button-spoiler img").replaceWith(a); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").each(function() { $(this).html($(this).html().replace('Свернутый текст',MyWord)) $(this).html('<p type=text style="margin:0 0 -6px 0;">'+$(this).html().replace(/(.*)?\|(.*)?/img,'<span class="visible">$1</span><span class="hide">$2</span>')+'</p>') }); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").live("click", function(){ $(this).toggleClass("Active") $(this).next('blockquote').toggle('Slow'); $(this).find('span:eq(0),span:eq(1)').toggleClass('hide').toggleClass('visible'); }); }); </script> <!-- Правки для спойлера сервиса НТML верх-->
Поделиться855Вт, 27 Мар 2012 14:52:49
Вложенные спойлеры снова работают.
Как ни странно, но только первый. пример
Может, я что-то не так делаю?
Поделиться856Вт, 27 Мар 2012 17:52:18
а у меня вот так все отображается...
http://pocidelki.maminforum.com
Поделиться857Вт, 27 Мар 2012 18:09:36
Deff
спасибо и еще... я немного видоизменила скрипт под себя
<!--Спойлер--> <style type="text/css"> /*Спойлер */ .post-content .spoiler-box > blockquote.visible { display: none;}.punbb .spoiler-box blockquote { min-width: 100%!important; } .post-content .spoiler-box > div { padding-top: 8px; } .post-content .spoiler-box > div.Active { padding-top: 8px; } </style> <script type="text/javascript"> MyWord='more' //Замена фразы:"Свернутый текст" $(document).ready(function(){ a='<img onclick="tag_spolierr()" title="spoiler" src="/i/blank.gif"/>' $("#form-buttons td#button-spoiler img").replaceWith(a); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").each(function() { $(this).html($(this).html().replace('Свернутый текст',MyWord)) $(this).html('<p type=text style="margin:0 0 -6px 0;">'+$(this).html().replace(/(.*)?\|(.*)?/img,'<span class="visible">$1</span><span class="hide">$2</span>')+'</p>') }); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").live("click", function(){ $(this).toggleClass("Active") $(this).next('blockquote').toggle('Normal'); $(this).find('span:eq(0),span:eq(1)').toggleClass('hide').toggleClass('visible'); }); }); </script> <!-- Правки для спойлера сервиса НТML верх-->
И появилось 2 вопроса.
1. Как сделать чтоб с этим скриптом спойлер открывался резко, как тут, а не выезжал плавно.
2. Со скриптом не работает кнопка спойлера мубб на странице редактирования поста.
Поделиться858Вт, 27 Мар 2012 18:14:26
И появилось 2 вопроса.
1. Как сделать чтоб с этим скриптом спойлер открывался резко, как тут, а не выезжал плавно.
<!--Спойлер--> <style type="text/css"> /*Спойлер */ .post-content .spoiler-box > blockquote.visible { display: none;}.punbb .spoiler-box blockquote { min-width: 100%!important; } .post-content .spoiler-box > div { padding-top: 8px; } .post-content .spoiler-box > div.Active { padding-top: 8px; } </style> <script type="text/javascript"> MyWord='more' //Замена фразы:"Свернутый текст" $(document).ready(function(){ a='<img onclick="tag_spolierr()" title="spoiler" src="/i/blank.gif"/>' $("#form-buttons td#button-spoiler img").replaceWith(a); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").each(function() { $(this).html($(this).html().replace('Свернутый текст',MyWord)) $(this).html('<p type=text style="margin:0 0 -6px 0;">'+$(this).html().replace(/(.*)?\|(.*)?/img,'<span class="visible">$1</span><span class="hide">$2</span>')+'</p>') }); $(".post-box .quote-box.spoiler-box div[onclick*='toggleClass']").live("click", function(){ $(this).toggleClass("Active") $(this).next('blockquote').toggle(); $(this).find('span:eq(0),span:eq(1)').toggleClass('hide').toggleClass('visible'); }); }); </script> <!-- Правки для спойлера сервиса НТML верх-->
2. Со скриптом не работает кнопка спойлера мубб на странице редактирования поста.
Ссылку на Такое сообщение и ник-пароль в личку - позволяющий его редактировать
Отредактировано Deff (Вт, 27 Мар 2012 18:48:15)
Поделиться859Вт, 27 Мар 2012 18:16:13
Как ни странно, но только первый. пример
Может, я что-то не так делаю?
Поставьте код из поста 844
Поделиться860Вт, 27 Мар 2012 18:19:15
а у меня вот так все отображается...
http://pocidelki.maminforum.com
Уберите этот код из HTML низ
<style> #button-spoiler {background-image:url('http://forumupload.ru/uploads/0000/12/13/488-1.gif'); padding:0; line-height:0; background-position:center; background-repeat:no-repeat; height:26px; width:100%} </style> <script type="text/javascript"> function tag_spolier() {var FoundErrors = ''; var enterTITLE = prompt("Введите описание спойлера", 'Спойлер'); bbcode('[spoiler]',('|'+enterTITLE+'[/spoiler]'));} if(form=document.getElementById("form-buttons")) form.getElementsByTagName("tr")[0].insertCell(19).innerHTML="<img src='/i/blank.gif' title='Вставить спойлер' id='button-spoiler' onclick=\"tag_spolier()\">" function addSpoilerSpoiler(str,from,internal){ var pos=0,pos2=0,newpos=0 if((pos=str.indexOf("[spoiler]",from))==-1) return str; if((pos2=str.indexOf("[/spoiler]"),pos+9)==-1) return str; newpos=str.indexOf("[spoiler]",pos+9) if(newpos<pos2 && newpos!=-1) str=addSpoiler(str,pos+9,true) if((pos2=str.indexOf("[/spoiler]",pos+9))==-1) return str; txt = str.substring(pos+9,pos2); if((sepPos=txt.indexOf("|",0))==-1) return str; str=str.substring(0,pos)+makeSpoilerSpoiler(txt.substring(0,sepPos),txt.substring(sepPos+1,txt.length))+str.substring(pos2+10,str.length) if( str.indexOf("[spoiler]")!=-1 && internal==false) str=addSpoilerSpoiler(str,0,false) return str} function makeSpoilerSpoiler(txt1,txt2){ txt='<div class="quote-box" style="padding:1px;background: none;border: 0;"><cite style="width:100%;margin:0;"><input class="spoiler-button" style="width:140px;font-size:10px; margin:0; cursor: pointer" type="button" value="'+txt2+'"></cite><blockquote class="quote-box" style="display:none; width: 80%;border: 1px solid black;margin:0;">'+txt1+'</blockquote></div>' return txt} $(document).ready(function(){ $("div.quote-box > cite > input.spoiler-button").click(function(){ $(this).parents("div.quote-box").find("blockquote.quote-box").toggle("normal"); }); }); if((document.URL.indexOf("viewtopic.php")!=-1) || (document.URL.indexOf("post.php")!=-1)){ elm=document.getElementById("pun-main").getElementsByTagName("div") for(x in elm) if(elm[x].className=="post-content"){ var post=elm[x] post.innerHTML=addSpoilerSpoiler(post.innerHTML,0,false)}} </script>
И поставьте код из поста 805