MbIJIO
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Добрый вечер. Функцией Код: получаю выделенный текст Функцией Код: window.getSelection().anchorNode | получаю текст в элементе, с которого начал выделение Функцией Код: window.getSelection().focusNode | получаю текст в элементе, которым закончил выделение Код: jQuery(document).ready(function(){ var isCtrl = false; jQuery(document).keyup(function(e){ if(e.which == 17) isCtrl = false; }).keydown(function(e){ if(e.which == 17) isCtrl = true; if(e.which == 13 && isCtrl == true){ // получаем выделенный текст var select = getSelectedText(); // получаю текст первого выделенного элемента от 0 до знака, который в выделенном тексте var start_ = window.getSelection().anchorNode.textContent.substring(0,select.anchorOffset); // получаю текст последнего выделенного элемента от последнего знака, который в выделенном тексте var _end = window.getSelection().focusNode.textContent.substring(select.focusOffset); var string = start_+select+_end; } }); }); | Если выделять текст буду слева направо, то все хорошо, а если справа налево, то получится неправильный результат Хочу |выделить текст справа| налево то в результате вот что получится select = выделить текст справа start_ = Хочу выделить текст справа _end = выделить текст справа налево и итоговая строка будет "Хочу выделить текст справа выделить текст справа выделить текст справа налево" Подскажите как определить какой элемент идет первым, а какой последующим. Спасибо. |