Добавление функциональности в редактор среды daviferreira WYSIWYG

Я делаю плагин, чтобы сделать его средний редактор более похожим на средний. Я не уверен, как отключить способность пользователя нажимать клавишу ввода, если он ничего не набрал, или как добавить строку, разделяющую абзацы, если пользователь нажимает клавишу ввода дважды.

3 ответа

Средний редактор поддерживает disableDoubleReturn вариант, который вы можете передать в редактор во время создания экземпляра. Это предотвращает возможность пользователю иметь 2 или более последовательных новых строк. Я считаю, что это выполнит первое требование, которое вы перечислили.

var mediumEditor = new MediumEditor('.editor', { disableDoubleReturn: true });

Чтобы выполнить 2-е требование, которое вы перечислили, вы могли бы добавить некоторые функции в сам редактор среды, чтобы вызвать обратный вызов, когда пользователь нажимает клавишу возврата или даже добавить hrBetweenParagraphs опция, которая может добавить строку между последовательными абзацами.

Вы можете реализовать любой из них в bindReturn метод core.js в самой последней версии репо, так как именно здесь обрабатывается нажатие клавиши ввода. Мы принимаем много запросов на получение очень часто, поэтому мы будем рады принять что-то вроде этого:)

средний редактор репо на github

Для идей кода, взгляните на grande.js, который реализует обе эти тонкие функции:

https://github.com/mduvall/grande.js/

В частности: function preprocessKeyDown() а также function insertHorizontalRule()

Поскольку вы используете редактор Дэви. Вы можете добавить свой код в bindParagraphCreation для ввода, нажмите клавишу, где keyevent.which == 13, проверьте

  • TextContent

    внутри узла... и если он пуст, остановите событие с помощью protectdefault() и вернитесь... во-вторых, вы можете сделать то же самое только:)

Другие вопросы по тегам