Форумы xBB | |||||||||||||||||||
Форумы xBB > BBCode и прочие языки упрощенной разметки FAQ по парсеру BBCode. Ненужные функции, использование парсера и редактораАвтор: dima. Последнее редактирование: 2010-12-21 10:39:10 Продолжение FAQ по библиотеке xBB v0.29, начатого здесь: FAQ по парсеру BBCode. Справка и файлыВопрос. Нет полной информации как можно полностью избавиться(подчистить даже в ручную) от ненужных функций. Ответ. Не совсем понятно, какие именно функции являются ненужными. Поэтому, если какие-то функции ниже не указаны, то жду по ним отдельного вопроса. Ниже постараюсь перечислить функции, от которых можно избавиться: Как избавиться от ненужных тегов? Откройте файл bbcode/config/tags.php и закомментируйте строчки с ненужными тегами. Как избавиться от автоматических ссылок? Способ первый. В свой PHP-код вставьте строчку PHP $bb->autolinks = false;Способ второй. Откройте файл bbcode/config/parser.config.php и измените строчку PHP $this->autolinks = true;на PHP $this->autolinks = false;Как избавиться от редактора BBCode? Просто не используйте его. Можете работать с любым другим. Как избавиться от лишних кнопок редактора? Откройте файл bbcode/xbb.php и найдите в нем ряд строк, аналогичных следующим: HTML ...<td><a href="#" onclick="xbb_insertSimpleTags('s');return false;" class="toolbarButton"><img alt="[s]" src="./images/buttons/s.gif" id="img_s" /></a></td> ... Удалите лишние. Как избавиться от кнопки подсветки синтаксиса в редакторе BBCode? Откройте файл bbcode/xbb.php и найдите в нем следующий код: HTML <tr><td align="right"><script type="text/javascript"> var xbb_iframe = document.getElementById(bb.iframeId); var xbb_textarea = document.getElementById(bb.textareaId); var height = (xbb_height - 66) + 'px'; if ('highlight' == bb.state) { xbb_textarea.style.display = 'none'; xbb_iframe.style.height = height; } else { xbb_iframe.style.height = '1px'; xbb_textarea.style.height = height; } xbb_text2CurrentText(); if ('highlight' != bb.state) { xbb_textarea.value = bb.text; } </script> <table border="0" cellpadding="0" cellspacing="0" onclick="xbb_changeState()" style="background-image:url(./images/background.gif)"> <tr><td><img src="./images/left.gif" alt="" /></td> <td align="center" width="150"> <a href="#" class="button" id="changeState"> <?php if ('highlight' == $state) { echo $xbb_lang['changestate_highlight']; } else { echo $xbb_lang['changestate_plane']; } ?> </a></td> <td><img src="./images/right.gif" alt="" /></td> </tr> </table> </td></tr></table> и замените его на следующий: HTML </table><script type="text/javascript"> var xbb_iframe = document.getElementById(bb.iframeId); var xbb_textarea = document.getElementById(bb.textareaId); var height = (xbb_height - 38) + 'px'; xbb_iframe.style.height = '1px'; xbb_textarea.style.height = height; xbb_text2CurrentText(); xbb_textarea.value = bb.text; </script> Готово. Вопрос. Ваша библиотека подразумевает по Вашим утверждениям, как обрабатывать введенный текст из своей формы, так и использовать ваш редактор)))) Но нет опять же подробной инструкции, как организовать оба случая, и что нужно для обоих случаев, ведь для использования просто обработчика все файлы не нужны я так понимаю??? Как использовать парсер (обработка текста BBCode): http://xbb.uz/docs/start.bb Более подробно (API): инициализация объекта bbcode, свойства класса bbcode, методы класса bbcode, как создать тег. Как использовать редактор: http://xbb.uz/docs/start-editor.bb Вопрос. Непонятна суть, как прикрутить изначально ваш редактор к своей странице( Суть в том, что подгружается JS-скрипт bbcode/xbb.js.php и создается объект редактора. Ему сопоставляется <textarea> с каким-то значением атрибута "id". Дальше JS-скрипт делает эту <textarea> скрытой и создает на ее месте <iframe>, в который подгружает собственно редактор, а затем копирует в рабочую область редактора содержимое скрытой <textarea>. При сабмите содержимое рабочей области редактора копируется обратно в скрытую <textarea> и передается на сервер вместе с другими данными формы. Чтобы это стало возможным, JS-скрипт сажает свой обработчик на событие "onsubmit" формы, в которой содержится <textarea>. Все эти действия проделываются автоматически и не требуют вмешательства вебмастера, если только он не хочет изменить логику описанного процесса. Конкретный код установки редактора можно найти по одной из указанных выше ссылок. Продолжение следует. 10 комментариев
Здравствуйте!
|
| 25.10.2011 16:35:05 | # |
| 29.11.2011 16:20:34 | # |
| 29.11.2011 19:11:11 | # |
| 29.11.2011 22:46:51 | # |
Для этого существует свойство mnemonics. Его использование описано на странице документации Быстрый старт.Возможно мне пора лечиться от косоглазия
, но там я увидел только способ задать свой набор смайлов, а вот как отключить их поностью так до конца и не понял. Возможно просто задать свойству пустой массив?| 21.12.2011 00:24:38 | # |
| 11.01.2012 00:46:41 | # |
| 11.01.2012 05:01:40 | # |
© 2007-2012, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.