Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.03.2011, 13:54
Аспирант
Отправить личное сообщение для pro_xaoc Посмотреть профиль Найти все сообщения от pro_xaoc
 
Регистрация: 23.03.2011
Сообщений: 69

Выделение текста с помощью скрипта
Уважаемые знатоки! Прошу вашей помощи. В общем вопрос такой: Вот в форумах после выделения текст и нажатия на "цитировать", выделенный фрагмент появляется в textarea. Как можно это организовать? В гугле говорят про document.selection.createRange, но у меня чего-то не работает, возможно где-то допускаю ошибку. Заранее спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 23.03.2011, 17:16
Аватар для Serg_pnz
Сам по себе
Отправить личное сообщение для Serg_pnz Посмотреть профиль Найти все сообщения от Serg_pnz
 
Регистрация: 09.06.2009
Сообщений: 963

Попробуйте это
if (document.getSelection) {txt=document.getSelection()}
else if (document.selection) {txt=document.selection.createRange().text;}
Ответить с цитированием
  #3 (permalink)  
Старый 23.03.2011, 18:28
Аспирант
Отправить личное сообщение для pro_xaoc Посмотреть профиль Найти все сообщения от pro_xaoc
 
Регистрация: 23.03.2011
Сообщений: 69

но как вызывать эту функцию при выделении какого-то текста? или как называется это самое событие, чтоб я смог привязать к нему эту функцию?
Ответить с цитированием
  #4 (permalink)  
Старый 23.03.2011, 18:39
Аспирант
Отправить личное сообщение для goldserg Посмотреть профиль Найти все сообщения от goldserg
 
Регистрация: 08.02.2010
Сообщений: 37

Ставь таймер.
setInterval
Ответить с цитированием
  #5 (permalink)  
Старый 23.03.2011, 20:57
Аспирант
Отправить личное сообщение для pro_xaoc Посмотреть профиль Найти все сообщения от pro_xaoc
 
Регистрация: 23.03.2011
Сообщений: 69

setInterval(my,0);
	var my = $('#qu');	
	function my (){
		if (document.getSelection == ''){
			return false;
		}else {
			txt=document.getSelection();
			my.val(txt);
		}
	}

почему условие в функции, постоянно возвращает истину? даже если и getSelection пуст (т.е. ничего не выделено). Из-за него, я не могу что либо написать на textarea, постоянно обнуляется. Спасибо.
Ответить с цитированием
  #6 (permalink)  
Старый 24.03.2011, 12:27
Аспирант
Отправить личное сообщение для goldserg Посмотреть профиль Найти все сообщения от goldserg
 
Регистрация: 08.02.2010
Сообщений: 37

1) для начала переменная и имя функции должны быть с разными именами.
2) if (document.getSelection() == ''){
3) setInterval(my, 200) - будет вполне достаточно,

И все должно заработать.

Последний раз редактировалось goldserg, 24.03.2011 в 12:30.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перемещение текста с помощью мышки Владимир Седов Элементы интерфейса 3 07.01.2011 03:08
выделение текста в input'e z700i Общие вопросы Javascript 1 27.10.2010 21:57
Выделение текста в текстовом поле. Как снять выделение с пробела вконце? Roman Koff Events/DOM/Window 10 01.07.2010 16:48
Вставка скрипта с помощью innerHTML hryachok Events/DOM/Window 11 06.04.2010 14:52
кросс-браузерное выделение текста evgen28 Общие вопросы Javascript 4 28.04.2009 16:38