Как прослушать текст, выделенный в tinymce? - PullRequest
0 голосов
/ 04 февраля 2020

Я пытаюсь получить текст выбранного события из tinymce, я делаю это следующим образом

const editor = global["tinymce"].activeEditor;
editor.on("NodeChange", e => {
  const selectedText = editor.selection.getContent({ format: "text" });

});

Tinymce уже загружен wordpress перед включением этого кода, проблема Мне кажется, что событие NodeChange не запускается в экземпляре редактора. Я не хочу создавать плагин tinymce для этого, это возможно без создания плагина? Код, который я вставил сюда, на самом деле работает, если я добавляю его через консоль, я что-то упускаю при обычной загрузке

1 Ответ

0 голосов
/ 05 февраля 2020

Я предполагаю, что у вас есть проблема со временем. Редактор не «активен» до полной инициализации TinyMCE. Если вы попытаетесь вызвать:

const editor = global["tinymce"].activeEditor;

... до полной инициализации редактора, переменная editor вероятна null.

WordPress имеет множество хуков, позволяющих настроить конфигурацию TinyMCE, и это, вероятно, более надежный способ сделать то, что вы пытаетесь сделать. Вы можете абсолютно использовать функцию настройки в конфигурации TinyMCE, чтобы добавить свой код NodeChange.

Упаковка этого в плагин WordPress, безусловно, облегчит развертывание / обновление вашего решения, но это не является обязательным требованием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...