@historydev
Острая аллергия на анимешников

Как добавить текст в место курсора?

Доброй ночи. Я собрал функцию для работы с выделениями, теперь мне нужно вставлять текст в месте курсора, в гугле примеры пробовал, substr(end, el.value.length), это не работает почему-то. Укажите пожалуйста на косяки и как это должно выглядеть для достижения требуемого результата.

const replaceText = (el, text) => {
  
  el.focus();
  
  if(document.selection) {
    
    const createRange = document.selection.createRange();
    
    if(createRange.text) {
      
      createRange.text = text((createRange.text));
      
      createRange.select();
      
      return true;
      
    }
    
  } else if(el.selectionStart >= 0) {
    
    const start = el.selectionStart;
    const end = el.selectionEnd;
    
    if(start != end) {
      
      const replacedText = text((el.value.substr(start, end - start)));
      
      el.value = el.value.substr(0, start) + replacedText + el.value.substr(end);
      
      el.setSelectionRange(end, end);
      
    }
    
    return true
    
  }
  
  return false
  
}


Спасибо.
  • Вопрос задан
  • 54 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы