Показать сообщение отдельно
  #2 (permalink)  
Старый 11.12.2008, 12:37
Кандидат Javascript-наук
Отправить личное сообщение для vk65535 Посмотреть профиль Найти все сообщения от vk65535
 
Регистрация: 21.11.2008
Сообщений: 114

Если речь о текстовом инпуте, можно повесить на интервал что-то вроде
if (input.value.length > input.size) input.size = input.value.length;


Если о textarea, то по аналогии:
var rx = /([^\r\n]*)\r?\n\r?/g;

var textarea = document.getElementById('foo');
var mrows = 0, mcols = 0;
rx.lastIndex = 0;
for (var _, v = textarea.value; _ = rx.exec(v); ) {
	if (_[1].length > mcols) mcols = _[1].length;
	++mrows
}
if (mcols > textarea.cols) textarea.cols = mcols;
if (!window.addEventListener) ++mrows;
if (mrows > textarea.rows) textarea.rows = mrows;

Последний раз редактировалось vk65535, 11.12.2008 в 15:30.
Ответить с цитированием