сделала кнопку спойлер на форуме, но картинки нет, только крестик…как исправить?....
спойлер
Сообщений 1 страница 6 из 6
Поделиться2Сб, 20 Окт 2007 15:58:53
<!--Спойлер-->
<script>
function addSpoiler(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("Свернутый текст",from))==-1) return str;
if((pos2=str.indexOf(""),pos+9)==-1) return str;
newpos=str.indexOf("Свернутый текст",pos+9)
if(newpos<pos2 && newpos!=-1) str=addSpoiler(str,pos+9,true)
if((pos2=str.indexOf("",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("Свернутый текст")!=-1 && internal==false) str=addSpoiler(str,0,false)
return str}
function makeSpoiler(txt){
txt="<div class=quote-box style='padding:1px'><cite style='width:100%'>Спойлер <input style='width:60px;margin-left:70%;font-size:10px;' type='button' value='Показать' 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='Скрыть'}
else{
spoiler.style.display='none'
sp.value='Показать'}}
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(14).innerHTML="<img onclick=\"insert_text('[spoiler]', '')\" src='http://forumupload.ru/uploads/0000/28/3d/1623-1.gif' alt='Спойлер' />"
</script>
Жирным - адрес картинки спойлера
Поделиться3Сб, 20 Окт 2007 16:09:57
а теперь там просто бустое место ...во блин....
Поделиться4Сб, 20 Окт 2007 17:55:52
Это в html-низ:
<script type="text/javascript">
var teg=">"
var teg1="<p>"
var hint="</div>"
var hint1="<div style='display: none;'>"
var hint2="display: none"
var hid="if (innerHTML.toLowerCase().indexOf(hint2)!=-1) {innerHTML=innerHTML.substring(0, (innerHTML.toLowerCase().indexOf(teg)+1))"+"+innerHTML.substring((innerHTML.toLowerCase().indexOf(teg1)), (innerHTML.length-6))} else {innerHTML=innerHTML.substring(0, (innerHTML.toLowerCase().indexOf(teg)+1))+hint1+innerHTML.substr(innerHTML.toLowerCase().indexOf(teg1))+hint}"
var trt="<div onclick='"+hid+"'>"+"<img src='http://uploads.ru/images/k/karpoff/down.gif' /><div style='display: none;'><p>"
var trt1="</p></div></div>"
var quers=document.getElementById('pun-main').getElementsByTagName("div")
var pl=0
for (pl=0; pl<=(quers.length-1); pl++)
{if (quers[pl].className=="post-body")
{quers[pl].innerHTML=quers[pl].innerHTML.replace(/<spoiler>/g, trt)
quers[pl].innerHTML=quers[pl].innerHTML.replace(/<endspoiler>/g, trt1)}}
</script>
Это в форму ответа:
<input type="button" value="Подсказка" onclick="insert_text('<spoiler>', '<endspoiler>')" />
Синие меняешь на свое
Поделиться5Вс, 21 Окт 2007 23:26:58
Всё это конечно здорово, но чё мудрить, ребята
Проблема ведь в том, что картинки кнопки нет. Но сама функция работает, верно?
Ну дык и не надо целый скрипт давать. Просто нужно сменить адрес картинки.
А всё дело в том, что до изображений, загруженных на форум, изменились пути и имена файлов и "http://uploads.ru/images/k/karpoff/down.gif" уже не актуально.
Так что не парься, вот работающая картинка с моего форума >> http://forumupload.ru/uploads/0000/24/31/224-1.png
Вставляй в код в img src=''
Если хочешь, можешь картинку перезалить себе, может так даже и лучше будет.
Что касается кода, данного Djok'ом
Забудь про него вообще, он давно устарел. Сейчас используется другой спойлер, созданный Великим Karpoff'ом при моём участии, как на vBulletin.
Это в html-низ:
<script>
function addSpoiler(str,from,internal){
var pos=0,pos2=0,newpos=0
if((pos=str.indexOf("Свернутый текст",from))==-1) return str;
if((pos2=str.indexOf(""),pos+9)==-1) return str;
newpos=str.indexOf("Свернутый текст",pos+9)
if(newpos<pos2 && newpos!=-1) str=addSpoiler(str,pos+9,true)
if((pos2=str.indexOf("",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("Свернутый текст")!=-1 && internal==false) str=addSpoiler(str,0,false)
return str}function makeSpoiler(txt){
txt="<div class=quote-box style='padding:1px'><cite style='width:100%'>Спрятанный текст <input style='width:60px;margin-left:70%;font-size:10px;' type='button' value='Показать' 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='Скрыть'}
else{
spoiler.style.display='none'
sp.value='Показать'}}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(14).innerHTML="<img onclick=\"insert_text('[spoiler]', '')\" src='http://forumupload.ru/uploads/0000/24/31/224-1.png' alt='Вставка спрятанного текста' />"
</script>
Отредактировано Megaman (Вс, 21 Окт 2007 23:40:46)
Поделиться6Пн, 22 Окт 2007 10:00:16
А нарисовать картинку или поискать в интеренете нам лень - тьфу....всё готовенькое хотят - скажите спасибо не мне, а тем кто писал что скрипт вообще работает.