Подтвердить что ты не робот

Вставка текста в редакторе TinyMCE, где курсор

Я пытаюсь вставить текст в редактор TinyMCE в сфокусированном элементе абзаца (<p>), где курсор, но не получил никакой удачи!

var elem = tinyMCE.activeEditor.dom.get('tinymce');
var child = elem.firstChild;
while (child) {
    if (child.focused) {
        $(child).insertAtCaret("some text");
    }
    child = child.nextSibling;
}

Если кто-нибудь знает, как это решить, я буду очень благодарен.

4b9b3361

Ответ 1

Вы должны использовать команду mceInsertContent. См. Документацию

Ответ 2

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

Например:

tinymce.activeEditor.execCommand('mceInsertContent', false, " <b>bolded text</b> ");

будет вставлять полужирный текст в текущее местоположение курсора.

Некоторые другие интересные наблюдения:

mceInsertRawHTML также работает, но имеет тенденцию помещать курсор в начало текущей строки в моей версии tinyMCE, но ymmv.

mceReplaceContent работает, но в моем случае это не сработало, когда курсор находился в конце текущего содержимого.

Снова, см. документацию для получения дополнительной информации.