За последние 24 часа нас посетили 22532 программиста и 1011 роботов. Сейчас ищут 680 программистов ...

Как работать с выделенным текстом?

Тема в разделе "JavaScript и AJAX", создана пользователем Атм_Евгений, 26 сен 2021.

  1. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    Всем привет!

    Подскажите как сделать или укажите направление какие функции смотреть?
    Задача следующая:
    Я вывожу текст в textarea. Затем выделяю необходимый фрагмент и вот мне нужно произвести манипуляции с этим выделенным фрагментом: заменить, добавить что то...
    Манипуляции нужно провести именно по средством Java Script!
    Как мне получить доступ к выделенному фрагменту и как внести изменения в этот конкретный выделенный фрагмент?

    За ранее благодарю за ответ!
     
  2. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    858
    Симпатии:
    132
    Смотрите в эту сторону:
    Код (Javascript):
    1. // JQuery
    2. .trigger("select")
    3.  
    4. document.execCommand('copy');
     
  3. Атм_Евгений

    Атм_Евгений Активный пользователь

    С нами с:
    21 июл 2017
    Сообщения:
    206
    Симпатии:
    5
    Разобрался немного вот нашел варианты решения:

    // Вставка текста на место курсора или по краям выделенного фрагмента в textarea:
    function insertTag(_tag_start, _tag_end){
    var area=document.getElementsByName('data').item(0);
    if (document.getSelection){
    area.value=area.value.substring(0,area.selectionStart)+_tag_start+area.value.substring(area.selectionStart,area.selectionEnd)+_tag_end+area.value.substring(area.selectionEnd,area.value.length);
    }
    }
    // Вставка текста на место курсора или в место выделенного фрагмента в textarea:
    function insertCursor(_text){
    var area=document.getElementsByName('data').item(0);
    if ((area.selectionStart)||(area.selectionStart=='0')){
    var p_start=area.selectionStart;
    var p_end=area.selectionEnd;
    area.value=area.value.substring(0,p_start)+_text+area.value.substring(p_end,area.value.length);
    }
    }