Вставка содержимого с span в задаче TinyMCE Editor - PullRequest
0 голосов
/ 16 февраля 2019

Я пытался вставить текст с тегом span в Редактор TinyMCE, где находится курсор, но после нажатия ENTER я получаю каждый раз тег тега span.

Это моя функция для вставки текста скнопка:

function Insert(){
    tinymce.activeEditor.execCommand('mceInsertContent', false, '<span class="bgTest" data-prefix="ABC">This is a inserted text</span> ');
}

Это вывод моего браузера: Imgur

1 Ответ

0 голосов
/ 17 февраля 2019

Так что, если я правильно понимаю, функция отлично работает с вашей кнопкой.Но затем, когда вы нажимаете Enter во время набора текста, он не отображается должным образом?

Таким образом, похоже, что проблема заключается в поведении клавиш ввода по умолчанию.Вы должны предотвратить поведение по умолчанию клавиши ввода.Вам нужно preventDefault().

Я не изменил вашу функцию Insert(), поэтому она все равно будет работать с вашей кнопкой.

Но я добавил keydown прослушиватель событий к .tinymce, который будет preventDefault() нормальным поведением клавиши ввода (то есть добавить разрыв строки).Тогда вы активируете свою функцию Insert().

function Insert(){
    tinymce.activeEditor.execCommand('mceInsertContent', false, '<span class="bgTest" data-prefix="ABC">This is a inserted text</span> ');
}

document.querySelector(".tinymce").addEventListener("keydown", function(event) {
    if (event.keyCode === 13) {
        event.preventDefault();
        Insert();
    }
});

Надеюсь, это поможет.Дайте мне знать, если вам нужна дополнительная помощь :).

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