Можно ли как нибудь, сделать спойлер для форума? Ну уж очень нужно. Спасибо.
Отредактировано PlayBoy (21-02-2011 17:54)
Техническая поддержка Forum.com.kz |
Уважаемые пользователи!
Техническая поддержка осуществляется только при наличии заполненного поля «Веб-сайт» вашего профиля, адресом форума зарегистрированного на сервисе
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Техническая поддержка Forum.com.kz » Форум для новичков » Спойлер
Можно ли как нибудь, сделать спойлер для форума? Ну уж очень нужно. Спасибо.
Отредактировано PlayBoy (21-02-2011 17:54)
<!-- Спойлер -->
<style>
#button-spoiler {background-image:url('https://forumupload.ru/uploads/000c/65/17/462-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_spoiler(){
var y = prompt("Введите описание закрытой кнопки",'');
if(y!='null' && y!='' && typeof(y)!='object' && typeof(y)!='undefined'){
var x = prompt("Введите описание открытой кнопки",'');
if(x=='null' || x=='' || typeof(x)=='object' || typeof(x)=='undefined') bbcode('[spoiler='+y+'*]','[/spoiler*]'); else bbcode('[spoiler='+y+'|'+x+']','[/spoiler*]');}
else bbcode('[spoiler*]','[/spoiler*]')
}
function addSpoiler(str,from,internal){
var pos=0,pos2=0,pos_c=0,pos_l=0,newpos=0,string='',close='',open='', max_length=25;
if((pos=str.indexOf("[spoiler",from))==-1) return str;
if((pos2=str.indexOf("[/spoiler*]"),pos+9)==-1) return str;
if(((pos_c=str.indexOf("*]",pos+8))!=-1) && ((pos_c!=pos+8)&&(pos_c!=pos+9))){
string = str.substring(pos+9,pos_c);
if((pos_l = string.indexOf("|"))!=-1){
close = string.substring(0,pos_l);
open = string.substring(pos_l+1,string.length);
}
else{
close = string;
open = string;
}
}
else{
close = 'Показать спойлер';
open = 'Скрыть спойлер';
}
open = (open.length > max_length) ? open.substring(0, max_length) : open;
close = (close.length > max_length) ? close.substring(0, max_length) : close;
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_c+1,pos2),open,close)+str.substring(pos2+10,str.length)
if( str.indexOf("[spoiler")!=-1 && internal==false) str=addSpoiler(str,0,false)
return str;
}
function makeSpoiler(txt,open,close){
txt='<div class="quote-box" style="padding:1px;background: none; border: 0;"><cite style="width:100%;margin:0;"><input id="'+open+'" class="spoiler-button" style="width:100px;font-size:10px; margin:0;" type="button" value="'+close+'"></cite><blockquote class="quote-box" style="display:none; width: 80%;background-color:#e4ccab;border: 1px solid #857156;margin:0;">'+txt+'</blockquote></div>'
return txt;
}
$(document).ready(function(){
$("div.quote-box > cite > input.spoiler-button").click(function(){
$(this).parents("div.quote-box:first").find("blockquote.quote-box:first").toggle("slow");
var a = $(this).attr('value');$(this).attr('value',$(this).attr('id'));$(this).attr('id',a);
});
});
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=addSpoiler(post.innerHTML,0,false)
}
}
if(form=document.getElementById("form-buttons"))
form.getElementsByTagName("tr")[0].insertCell(16).innerHTML="<img id=\"button-spoiler\" title=\"Спойлер\" onclick=\"tag_spoiler('[spoiler*]','[/spoiler*]')\" src=\"/i/blank.gif\" />"
</script>
---------------------------------------------------------------------------------------
вставить HTML - низ
отредактируйте, ниже написанное
* - убираем из кода.
width: 80% - ширина поля с текстом спойлера (в %).
background-color:#e4ccab - цвет фона поля (поле - текст спойлера).
border: 1px solid #857156 - толщина (в px) и цвет обводки поля.
Спрос скриптов | Скрипты | 18-06-2014 |
Если такая возможность...? | Форум для новичков | 22-01-2010 |
Поле ввода текста | Проблемы с форумом | 03-04-2012 |
Изменения в форме ответа | Информация сервиса | 30-05-2012 |
Вы здесь » Техническая поддержка Forum.com.kz » Форум для новичков » Спойлер