Forum Webscript.Ru
		Программирование => JavaScript & JScript => Тема начата: 0b0rm0t от 10 Декабря 2006, 09:47:31
		
			
			- 
				Хочу включить обработку вставляемого в textarea текста. Как я понимаю, для этого надо научиться перехватывать вставку текста. Обрабатывать при отправке -- не выход, пользователь должен все сразу видеть в "правильном" виде. Упоминания о событиях onpaste/onbeforepaste нашел только у IE и Safari. Но хотелось бы сделать это в каком-нибудь кроссплатформенном браузере (по сути выбор не велик -- Opera, либо что-то на Gecko). Не подскажете, как?
			
- 
				0b0rm0t 
 косоязычие - твой враг....
- 
				commander 
 шутка удалась.
 
 Если серьезно, то я, конечно, мог написать небольшое сочинение "О сути моей проблемы" на литературном русском, килобайт на 5 -- 6. Так было бы гораздо понятнее и приятнее читать. Но я как-то больше склоняюсь к мысли поберечь чужое время и потому сжал текст до минимума. По-моему результат получился неплохим, он достаточно точно отражает суть вопроса. Вы согласны со мной?
- 
				Сжимать нужно было до "как кроссбраузерно перехватить любое изменение текста в текстовом поле, включая копирование из буфера и т.п."
 ИМХО, единственное негеморройное решение — сохранять текст в отдельной переменной и сравнивать его с некоторой периодичностью со значением поля.
- 
				Неправильно. Любые изменения меня не интересуют, только вставка из буфера (ну, drag\'n\'drop еще, если включен). И кроссбраузерность тоже пофиг, если решение будет работать в одном браузере (или вообще только в отдельной его версии), то этого будет вполне достаточно. Нужна кроссплатформенность.
 
 Про переменную, конечно, думал. Пока так и сделал. Но это далеко не лучший способ, и он будет здорово глючить.
- 
				vasa_c, 0b0rm0t 
 сравнивать его с некоторой периодичностью со значением поля 
 Сравнивать по onChange + onClick можно попробовать. Без глюков.
 0b0rm0t
 Кстати, есть объект clipboardData() для IE