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

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

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


Вы здесь » Единый форум поддержки » Корзина » Нужна помощь по написанию и изменению двух скриптов


Нужна помощь по написанию и изменению двух скриптов

Сообщений 1 страница 12 из 12

1

1.
Есть скрипт, который отделяет "выделенные" (они же важные) темы форума от всех остальных разделителем определенной ширины и цвета.

вот так:

http://i049.radikal.ru/0905/82/1d5abc51d9fct.jpg

Прошу сделать скрипт, который создаст еще один или несколько разделителей, но не между важными темами и обычными, а только между обычными темами в нужном подфоруме.

типа того:

http://s52.radikal.ru/i138/0905/bd/32431f1cef21t.jpg

эм, надеюсь понятно объяснил )

2.
скрипт, добавляющий кнопочку "спойлер"

Код:
[i]<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:1px'><cite style='width:100%'>Spoiler <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(19).innerHTML="<img  id=\"button-spoiler\" title=\"Spoiler\" onclick=\"bbcode('[spoiler]','[/spoiler]')\" src=\"/i/blank.gif\" />"
</script>[/i]

Но меня не очень устраивает как он в итоге выглядит, хотелось бы изменить следующее:
чтобы 1 - совсем не было, а 2 - было не кнопкой а просто словом. Так же хотелось бы чтобы не было выделения подобия цитаты, просто сокрытие\открытие текста нажатием на слово.

http://s57.radikal.ru/i157/0812/96/f151ed95dd7dt.jpg

0

2

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

1 - совсем не было, а 2 - было не кнопкой а просто словом.

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

<div class=quote-box style='padding:1px'><cite style='width:100%'>Spoiler <input style='width:60px;margin-left:70%;font-size:10px;' type='button' value='показать' onclick='hideSpoiler(this)'></cite><blockquote style='display:none'>"+txt+"</blockquote></div>"

Тут меняйте на языке ХТМЛ (ищите в скрипте).

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

Так же хотелось бы чтобы не было выделения подобия цитаты, просто сокрытие\открытие текста нажатием на слово.

Нельзя, поскольку в скрипте элемент классом приравнивается к цитате

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

class=quote-box

+1

3

а в

написал(а):

type='button'

какие могут быть значения кроме top и  botton  потому что вид кнопки все равно не пропадает

0

4

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

type='button'

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

0

5

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

Замените его на то, что Вам надо.

:blush:  а что нужно прописать чтобы была не кнопка а просто слово?

0

6

Kolin

Код:
<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:1px'><cite style='width:100%'>Spoiler <input style='width:60px;margin-left:70%; font-size:10px; border-width: 0px;' readonly 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(19).innerHTML="<img  id=\"button-spoiler\" title=\"Spoiler\" onclick=\"bbcode('[spoiler]','[/spoiler]')\" src=\"/i/blank.gif\" />"
</script>

Так?

0

7

эм, нет, не так, надо, чтобы совсем обводки не было, а слово выглядело ссылкой.

0

8

Kolin, есть скрипт спойлера без окна и просто одной кнопкой. Но он не корректно работает в одном сообщении с цитатой.
Може вас он и устроит. Кнопку можно нарисовать свою

Код:
<style type="text/css">
#button-spoiler {background-image:url('http://i011.radikal.ru/0903/67/e270f546ec05.png'); 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 style='padding:1px'><img src='http://s55.radikal.ru/i148/0811/e1/7bf525a190fa.gif' onclick='hideSpoiler(this)'><br /><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(18).innerHTML="<img  id=\"button-spoiler\" title=\"Спойлер\" onclick=\"bbcode('[spoiler]','[/spoiler]')\" src=\"/i/blank.gif\" />"
</script>

0

9

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

чтобы совсем обводки не было

Её там и нет.

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

а слово выглядело ссылкой

Нельзя. Это надо будет переделывать...

0

10

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

чтобы совсем обводки не было

В структуре стиля надо убрать border: в окне цитаты и фон сделать как в поле сообщения. Тогда рамки не будет. но и в цитате её не будет

Отредактировано Good (Сб, 4 Июл 2009 22:09:29)

0

11

Спасибо. Справился )) а что на счет первого скрипта?

0

12

:flag: поднимаю вопрос снова по первому пункту.  :flag: помогите, очень надо

1.
Есть скрипт, который отделяет "выделенные" (они же важные) темы форума от всех остальных разделителем определенной ширины и цвета.

вот так:

http://i049.radikal.ru/0905/82/1d5abc51d9fct.jpg

Прошу сделать скрипт, который создаст еще один или несколько разделителей, но между обычными, темами в нужном подфоруме.

типа того:

http://s52.radikal.ru/i138/0905/bd/32431f1cef21t.jpg

эм, надеюсь понятно объяснил )

0


Вы здесь » Единый форум поддержки » Корзина » Нужна помощь по написанию и изменению двух скриптов