Я использую код Jayant в этом посте how-to-insert-text-into-the-textarea-at-the-current-cursor-position для вставки в редактор Evernote.
Поскольку редактор Evernote является редактором форматированного текста, я меняю el.value на el.innerText, когда я запускаю его, исходное форматирование нарушается, и новый текст не там, где находится курсор, он всегда вставляется в верхняя строка редактора.
Итак, как использовать внутренний HTML или innerText для вставки в редактор Evernote?
function typeInTextarea(newText, el = document.activeElement) {
const start = el.selectionStart
const end = el.selectionEnd
const text = el.innerText
const before = text.substring(0, start)
const after = text.substring(end, text.length)
el.innerText = (before + newText + after)
el.selectionStart = el.selectionEnd = start + newText.length
el.focus()
}