Как в редактор redactor добавить свой span с классом?

InstantCMS 2.X

Как в редактор redactor добавить свой span с классом?

#1 2 июля 2018 в 22:56
Привет, друзья!
Возможно ли как то расширить редактор своими классами? Если да, то как
#2 3 июля 2018 в 13:51

Возможно ли как то расширить редактор своими классами? Если да, то как

yury
Непонятна задача. Нужно добавить какие-то стили в редактор или нужна новая кнопка?
#3 3 июля 2018 в 19:27

Нужно добавить какие-то стили в редактор или нужна новая кнопка?

Ris
да, кнопка, которая позволяла бы выделять нужный текст по примеру как выделяется заголовком или жирным.
#4 3 июля 2018 в 20:44
yury,
Нужно сделать плагин.
Например взять плагин спойлера с гитхаба и слегка доработать.
#5 4 июля 2018 в 15:19


yury,
Нужно сделать плагин.
Например взять плагин спойлера с гитхаба и слегка доработать.

Ris

можно пример плагина на гите?
#8 5 июля 2018 в 19:18
Пытался так сделать

  1.  
  2. if (!RedactorPlugins) var RedactorPlugins = {};
  3.  
  4. RedactorPlugins.span = {
  5. init: function ()
  6. {
  7. var fonts = [ 'marked' ];
  8. var that = this;
  9. var dropdown = {};
  10.  
  11. $.each(fonts, function(i, s)
  12. {
  13. dropdown['s' + i] = { title: s, callback: function() { that.setSpan(s); }};
  14. });
  15.  
  16. dropdown['remove'] = { title: this.opts.curLang['remove_font'], callback: function() { that.resetSpan(); }};
  17.  
  18. this.buttonAdd('span', this.opts.curLang['span'], false, dropdown);
  19. },
  20. setSpan: function (value)
  21. {
  22. this.inlineSetClass('marked', value);
  23. },
  24. resetSpan: function()
  25. {
  26. this.inlineRemoveClass('marked');
  27. }
  28. };
т.е задача была сделать span class="marked"
#9 5 июля 2018 в 23:02

еще надо редактировать файл redactor.js

yury
Еще надо редактировать файл \wysiwyg\redactor\wysiwyg.class.php
#10 6 июля 2018 в 20:12


еще надо редактировать файл redactor.js

yury
Еще надо редактировать файл \wysiwyg\redactor\wysiwyg.class.php

Ris

да, я уже полностью с гита взял обновленный редактор. по принципу со спойлером сделал, но осталось понять как сам скрипт правильно прописать. привел код выше. Кнопка подгрузилась, скрипт отрабатывает, но почему то не вставляется в редактор спан
#11 6 июля 2018 в 21:24
yury,
Вы лучше скажите, какой спан надо добавлять к выделенному контенту.
#12 6 июля 2018 в 22:05


yury,
Вы лучше скажите, какой спан надо добавлять к выделенному контенту.

Ris

т.е задача была сделать span class="marked"
#13 6 июля 2018 в 22:44
yury,
Понятно.
Но Вы пытаетесь присвоить объекту this класс marked.
Вы понимаете, что this — это весь html страницы? Надо сначала изъять выделенный html
  1. content = this.getSelectionHtml();
А потом его обвести в спан и вставить обратно.
  1. span = '<span class="marked">'+content+'</span>';
  2. this.insertHtmlAdvanced(span);
#14 6 июля 2018 в 23:04


yury,
Понятно.
Но Вы пытаетесь присвоить объекту this класс marked.
Вы понимаете, что this — это весь html страницы? Надо сначала изъять выделенный html

  1. content = this.getSelectionHtml();
А потом его обвести в спан и вставить обратно.
  1. span = ''+content+'';
  2. this.insertHtmlAdvanced(span);

Ris

а можете на моем примере конечный результат показать? не очень понимаю(
#15 6 июля 2018 в 23:10

а можете на моем примере конечный результат показать?

yury
Пока не могу.
Я в отпуске и тот ноут, что есть под рукой, не позволяет установить некоторые инструменты.
Посмотрю после 16-го.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.