Подходы взаимодействия с курсором для элементов с атрибутами contenteditable=»true» и элементов ввода input, textarea несколько различаются. Начнем с первых. Предположим есть div элемент:
this.focus(); const range = document.createRange(); range.selectNodeContents(this); range.collapse(false); const sel = window.getSelection(); sel.removeAllRanges(); sel.addRange(range);
Под this предполагается собственно сам элемент.
Элементы ввода текста(input, textarea):
this.setSelectionRange(this.value.length, this.value.length); this.focus();