Предлагаю сделать так, чтобы цитирование было с BB-кодами: https://forumd.ru/viewtopic.php?id=7965
Чтобы смайлики, цвета и картинки оставались при цитировании.
Для тех кто не хочет регистрироваться чтобы смотреть код:
Установочный код (базовый функционал)
Рекомендуется применять в поле HTML в форме ответа.
Распознаёт все стандартные элементы форматирования сообщений (в том числе оформляемые блоки, медиаспойлеры, списки и т.д.), преобразуя их в соответствующие BB-теги.
При необходимости менять v=0, если в кеше браузера осталась неактуальная версия.
Распознавание пользовательских тегов (для продвинутых пользователей)
Обработку пользовательских тегов можно прописывать просто в <script></script> в HTML в форме ответа, модифицировать сам скрипт BB-цитирования - не требуется
Пользовательские теги (как распознаваемые скриптом, так и добавленные в Администрирование - Формы)
обрабатываем следующим образом:
BBQuote.extend({
селектор : [ '[тег]', '[/тег]', function(startTag, element) {...} ],
// ....можно добавлять неограниченное количество тегов
});
Например, для условного тега [custom][/custom]
правило для распознавания будет выглядеть
Для тега [test=всплывающий текст][/test]
правило в Администрирование - Формы будет выглядеть как
а функция для распознавания
Либо то же самое с использованием встроенной возможности BBQuote.addAttribute(tag, element) (специально для тегов с параметром),
где tag - открывающий тег (в нашем случае [test]), element - обрабатываемый элемент в посте (в нашем случае div.test):
Таким образом, при цитировании элемент поста
<div class="custom_tag custom_tag_test test" title="просто div с поясняющим текстом">...</div>
преобразуется в
[test=просто div с поясняющим текстом]...[/test]
Одиночные теги, соответственно, добавляются в виде
'селектор': [ '[tag]', '' ]
При необходимости добавить атрибут точно так же указываем функцию обработки.
Распознавание нестандартных цитат (со ссылкой и аватаром участника)
Поскольку таковые реализуются внешними скриптами и не входят в стандартный функционал форума,
предполагается их распознавание подключать отдельно скриптом-дополнением ниже основного скрипта BB-цитат:
Не требуется как-либо отдельно модифицировать скрипт для создания цитат со ссылкой на авторский пост (если установлен соответствующий скрипт): BB-цитирование происходит по стандартной кнопке цитаты, тем самым автоматически добавляет нужные идентификаторы в атрибут тега цитаты.
Отредактировано AGScratcherBest (2025-03-23 13:34:35)
- Подпись автора
[html]<div class="div1"><div class="div2"><a href="https://scratch.mit.edu/users/AGScratcherBest-2">Скретч</a><div class="dot"></div><a href="https://discord.gg/gbKEB6hnTy">Discord</a><div class="dot"></div><a href="https://clck.ru/3J6GDx">Matrix</a><div class="dot"></div><a href="https://agsb.miraheze.org/">Вики</a><div class="dot"></div><a href="https://shitpost.poridge.club/@AGScratcherBest">Sharkey</a></div></div><style>.div1 {background: radial-gradient(circle, #072e4b 45%, #08314e 10%) repeat;background-size: 35px 35px; /* Размер сетки точек */background-attachment: fixed;padding: 2em;border-radius: 1em;}.div2 {background-color: #041521;padding: 1em;border-radius: 3px;display: flex;}a {padding: 0 !important;display: block;color: #83d3f9 !important;font-size: 1.5em;font-weight: bold;margin: 0 !important;text-decoration:none!important;}a:first-child {margin-left:auto!important;}a:last-child {margin-right:auto!important;}.dot {background-color: #83d3f930;width: 5.5px;height:5.5px;margin:auto 7.5px;border-radius:50%;}</style>[/html]