Форум сервиса

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

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


Вы здесь » Форум сервиса » Дополнения к форумам » Теги в быстром ответе.


Теги в быстром ответе.

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

1

С помощью данного скрипта вы сможете добавить в форму быстрого ответа маленькую симпотичную формочку быстрых тегов. *Чтоб вас заинтересовало сразу привожу СКРИНШОТ.
Быстрые теги работают по очень удобному методу:[list][li]Вставляются на место курсора[/li][li]Если есть выделенный текст, то они обводят его.[/li][/list]Скрипт проверен в ИЕ, Mozilla, Opera. Думаю проблем особых не должно быть.
И так, преступим к установке.
1) Стиль.
В формочке используются название стандартных классов скина, но есть мелкое изменение для курсора:
АЦ-Скины/Шаблоны-Стиль-Редактировать.
Находим:

.row2 { background-color: #DFE6EF }

копируем, вставляем ниже, добавляем "x" в название, и 1 оператор. Выглядеть будет так:

.row2x { background-color: #DFE6EF;
        cursor: pointer;
}

Повторяю:Код НЕ заменять, а добавлять ниже.[/u]
2) Форма.
АЦ-Скины/Шаблоны-HTML шаблоны-Настройка HTML-Topic View Section-quick_reply_box_open.
Находим:

  <!-- TITLE DIV -->
           <div class="tableborder">
             <div class='maintitle'><{CAT_IMG}>&nbsp;{ibf.lang.qr_title}</div>
                 <div class="tablepad" align="center">

И после этого вставляем:

<!-- НОВЫЕ ТЕГИ!!!! -->
<table border=0><tr><td width=25%>
<table class= "tableborder" cellpadding= 5 cellspacing=1>
<tr class= "maintitle"><td colspan=3 align="center">Быстрые теги</td></tr>
<tr><td>
<table class= "tableborder" cellpadding= 5 cellspacing=1>
<tr class="row2x" align = "center"><td colspan=2 width = 33% onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('B');this.style.backgroundColor='#EEF2F7'"><span><B>B</B></span></td><td colspan=2  width = 33% onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('I');this.style.backgroundColor='#EEF2F7'"><span><I>I</I></span></td><td colspan=2 width = 33% onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('U');this.style.backgroundColor='#EEF2F7'"><span><U>U</u></span></td></tr>
<tr class= "row2x" align = "center"><td colspan=2 onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('URL');this.style.backgroundColor='#EEF2F7'"><span><U>URL</U></span></td><td colspan=2 onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('IMG');this.style.backgroundColor='#EEF2F7'"><span><U>IMG</U></span></td><td colspan=2 onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('HTML');this.style.backgroundColor='#EEF2F7'"><span><font size=2>HTML</font></span></td></tr>
<tr class="row2x" align = "center"><td colspan=2 onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('QUOTE');this.style.backgroundColor='#EEF2F7'"><span>Quote</span></td><td colspan=2 onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('CODE');this.style.backgroundColor='#EEF2F7'"><span>Code</span></td><td colspan=2 onMouseOut="this.style.backgroundColor=''" onclick = "insTxt()" onmouseover = "copyT('List');this.style.backgroundColor='#EEF2F7'"><span>List</span></td></tr>
<!--COLOR-->
<tr><td style="background-color:blue; cursor:pointer; height:10px" onmouseover = "copyTC('blue')" onclick = "insTxt()"></td>
<td style="background-color:purple; cursor:pointer" onmouseover = "copyTC('purple')" onclick = "insTxt()"></td>
<td style="background-color:brown; cursor:pointer" onmouseover = "copyTC('brown')" onclick = "insTxt()"></td>
<td style="background-color:orange; cursor:pointer" onmouseover = "copyTC('orange')" onclick = "insTxt()"></td>
<td style="background-color:red; cursor:pointer" onmouseover = "copyTC('red')" onclick = "insTxt()"></td>
<td style="background-color:green; cursor:pointer" onmouseover = "copyTC('green')" onclick = "insTxt()"></td>
</td></tr></table></td></tr>
</table>

</td><td width = 75%>
                         <textarea cols='70' rows='8' name='Post' class='textinput' tabindex="1" id="tex" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onfocus="storeCaret(this);"></textarea></td></tr></table>

ВНИМАНИЕ:
Приведенный код уже содержит текстареу со всем её "наворотами", то есть старую текстареу вы должны УДАЛИТЬ. Изначально она у вас выглядит примерно так:

<textarea cols='70' rows='8' name='Post' class='textinput' tabindex="1"></textarea>

3) Скрипт.
АЦ-Скины/Шаблоны-HTML шаблоны-Настройка HTML-Topic View Section-Header
Перед

//-->
    </script>

Вставляем
[!--html--][/div]

HTML

[!--html1--]function copyT(code)
    {if (typeof(document.getElementById('tex').caretPos) != 'undefined'){
        if (window.getSelection) {text=window.getSelection()}
        else if (document.selection) {text=document.selection.createRange().text;}
  text='['+code+']'+text+'[/'+code+']'
  }
else if (typeof(document.getElementById('tex').selectionStart) != 'undefined')
{
   text = document.getElementById('tex').value.substring(document.getElementById('tex').selectionStart,document.getElementById('tex').selectionEnd)
  text='['+code+']'+text+'[/'+code+']
  }

    }

function copyTC(cl)
    {if (typeof(document.getElementById('tex').caretPos) != 'undefined'){
        if (window.getSelection) {text=window.getSelection()}
        else if (document.selection) {text=document.selection.createRange().text;}
  text='[COLOR='+cl+']'+text+'[/COLOR]'
  }
else if (typeof(document.getElementById('tex').selectionStart) != 'undefined')
{
   text = document.getElementById('tex').value.substring(document.getElementById('tex').selectionStart,document.getElementById('tex').selectionEnd)
  text='[COLOR='+cl+']'+text+'[/COLOR]
  }

    }

function storeCaret(element)
{
  if (typeof(document.selection) != 'undefined' && typeof(document.selection.createRange) != 'undefined')
  element.caretPos=document.selection.createRange().duplicate();
}

function insTxt()
{ var element = document.getElementById("tex")
  if (!element)
    return;
  element.focus();
  if (typeof(element.caretPos) != 'undefined')
    element.caretPos.text = text;
  else if (typeof(element.selectionStart) != 'undefined')
  {
    var newPos = element.selectionEnd + text.length;
    element.value = element.value.substring(0, element.selectionStart) + text + element.value.substring(element.selectionEnd, element.value.length);
    element.setSelectionRange(newPos, newPos);
  }
  else
    element.value += text;
}[!--html2--]

[div class='postcolor'][!--html3--]
Вот, и всё вроде.
UPDATE:
Делаем, чтоб при нажатии на CTRL+ENTER, срабатывала отправка быстрого ответа.
АЦ-Скины/Шаблоны-HTML Шаблоны-Настройка HTML-Topic View Section-quick_reply_box_open:
в самом начала после:
<script type="text/javascript">
        <!--
вставляем:

Код:
document.onkeydown=function(e){
if (e) event=e
if ((event.keyCode==13)&&(event.ctrlKey)){
      document.REPLIER.submit.click();
}}


Чтоб люди как-то знали, что оно работает, и этим можно пользоваться, можно написать неброско у кнопки "Отправить" (Ctrl+enter) к прмиеру серым цветом.

П.С. Если  у вас не стандартный скин, и хотите подстроить под свой форум то:
Цвет, который в коде я выделил синим, это цвет из класса row3. То есть вы сможете зайти в свой стиль, посмотреть какой у вас там цвет, и заменить везде этот цвет на ваш.

Отредактировано Maslo (2006-01-09 01:46:44)

0

2

Coming Soon:
Дополнения: [list][li]Тег цвета шрифта[/li][li]Show/Hide - сворачивание и развёртка формочки[/li][/list]

0

3

Находим:
QUOTE (SCRIPT)

  <!-- TITLE DIV -->
          <div class="tableborder">
            <div class='maintitle'><{CAT_IMG}>&nbsp;{ibf.lang.qr_title}</div>
                <div class="tablepad" align="center">
<table width= 100% border=0>
<tr>
<td width = 25%>

Не находим))) :D

0

4

объясню что у меня там за код:
перед <textarea...> делаете таблицу (1 строка, 2 ячейки - 25, 75%)
в первой ячейке формочка- во вотрой textarea

0

5

знал это, но всё равно спасибо :)

0

6

Хелп люди.
Дайте кто-нить форму вашего быстрого ответа, а то все перебираю, я для моего скина не подходят..
Скин Sapphire Icicle кажись

0

7

Код не доработан.
Все сделал. В итоге, при нажатии на кнопку "Быстрый ответ" форма не открывается.

P.S. В таблице слева "Быстрые тэги" расположены кнопки или же просто напоминание, как эти теги выглядят?

0

8

2 Aztec
и теги работали именно таким образом даже в Мозилле??? :)
2 Speaker
Приаттачь свой текст кода шаблона формы быстрого ответа в txt файл
2 Leshalegich
Всё работает.
Вот как на моём форуме: http://immortalforum.1bb.ru/
Если не открывается форма быстрого ответа(и кнопка Delete)не работает, то эта проблема не закрытого тега в Header.
Совет, верни header обратно, и загружай по 1 функции.. Не знаю почему так происходит, у меня тоже такое было.

0

9

2 Leshalegich
ПС. смысл такого напоминания?  :D конечно же кнопки :)

0

10

2 Maslo
Вот если я ничего в Header'e не меняю, то у меня кнопка "Быстрого ответа" открывает форму. Слева есть эта новая табличка "Быстрые тэги". Но почему-то кнопки в ней не работают - навожу на любой тэг и результат нулевой. Поэтому и спросил ;) В чем тут может быть дело?

0

11

2 Leshalegich
ничего не делает потому что функции ведь в хедере
кстати можешь функции прямо там и писать... перед формочкой.. только в таком ввиде:
<script type="text/javascript">
<!--
те функции
//-->
</script>
это если всё таки в хэдере не получится добавить... (просто лучше все скрипты хранить в хэдере, чтоб не искать потом)

0

12

2 Maslo
Так. Все равно что-то не выходит  :(  Если не трудно, посмотри текстовый прикрепленный файл (там код, который я в quick_reply_box_open разместил). Там все правильно? (В Header я вообще ничего не добавлял)
Просто если я использую это код, который в аттачменте, то у меня вообще нижняя часть пропадает (сразу после кнопок)

Отредактировано Leshalegich (2005-12-24 20:38:01)

0

13

ты мне скопировал в html+css.
скпопируй текст сам, сохрани в блокнотике и приаттачь сюда

0

14

ты мне скопировал в html+css.
скпопируй текст сам, сохрани в блокнотике и приаттачь сюда

Странно... я именно в блокноте и сохранял  :blink:

ВСЕМ:
У кого-нибудь еще получилось этот скрипт использовать? Были ли у вас те же проблемы, что и у меня?

0

15

2 Maslo ну незнаю, работало ли на мозиллу, но работоло :)

0

16

UPDATE:
Готов Колор-тег.
Допишу завтра, осталось пару деталей в css.

0

17

2 Leshalegich

Были ли у вас те же проблемы, что и у меня?

Я сделал себе легче просто в quick_reply_box_open перед смайликами Быстрого Ответа поставил вот это:

<td align='left' class='row2' valign='middle'><a name='entry{$post['pid']}' href="javascript:addsmile('');"><img src='http://1bb.ru/uploads/imperiall/post-13-1133899719.gif' alt='Вставить Жирный Текст' border='0' valign='absmiddle' /></a></td> &nbsp;
<td align='left' class='row2' valign='middle'><a name='entry{$post['pid']}' href="javascript:addsmile('');"><img src='http://1bb.ru/uploads/imperiall/post-13-1133900061.gif' alt='Вставить Подчёркнутый Текст' border='0' valign='absmiddle' /></a></td> &nbsp;
<td align='left' class='row2' valign='middle'><a name='entry{$post['pid']}' href="javascript:addsmile('');"><img src='http://1bb.ru/uploads/imperiall/post-13-1133899836.gif' alt='Вставить Текст Курсивом' border='0' valign='absmiddle' /></a></td> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;

Таким-же образом можно поставить и остальные теги.

Вот скриншот:

0

18

Вся в слезах....Вообще кнопка даже быстрого ответа исчезла...

0

19

2 Haktar
но это их родные... работают ужасно... вставляют в конец и не заменяет выделенный текст...
2 Dream
пожалуйста, прошу.. будьте ОЧЕНЬ внимательны устанавливая по инструкции.

0

20

так, ребята.. у кого проблемы- пишите мне в ПМ.. думаю всё решим...

0

21

UPDATE:
В первом посте в код внесены изменения.
-Там было написано function copyT(с) но так как, но он автоматом перевел скобку и С в ней на ©. может поэтому у вас были ошибки.
я там назвал переменную терь code.
-строкам таблиц было задано старый класс row2.. а нам же надо row2x... так же поправлено (это не страшно, просто тогда бы курсор рукой бы не был :) )
Приношу извинения.

0

22

А где же теги цвета в быстром ответе?  :(

0

23

2 Maslo

но это их родные... работают ужасно... вставляют в конец и не заменяет выделенный текст...

У меня они нормально работают, так же как и у тебя. Но мои теги только помоему на IE

0

24

Пашет
ТОлько у меня не получается всю эту таблицу здвинуть вправо, блин..

Отредактировано Speaker (2005-12-25 19:33:45)

0

25

2 BoooooLkA с MaKoM
в разроботке. С списком проблемы- не работает в ИЕ... придётся обходить тег селект. Скоро выложу.
2 Haktar
Только в эксплорере? кому это надо тогда :) ну ответ можешь на моём аватаре посмотреть :)
2 Speaker
Какую таблицу?
вывесь скрин (ссылкой), помогу исправить.

0

26

2 Maslo
Я про таблицу быстрых тегов, хочу чтобы она была правее текстэрии

0

27

ааа. тогда делаешь наоборот:
<table border=0>
<tr><td width = 75%> здесь вставляешь код текстареии</td><td width = 25%>а здесь формочку</td></tr></table>

0

28

Всё сделано.
Опять спасибо. сталось смайлы приткнуть:))

0

29

ну я у себя их и не убирал :)
смайлы будут сразу после закрытия </table> твоей

0

30

Да, я знаю, сейчас пробую оформить это всё в одну большую таблицу, покрасивей.. :o  :o

0


Вы здесь » Форум сервиса » Дополнения к форумам » Теги в быстром ответе.