Я знаю, что это старый вопрос, но, возможно, это кому-нибудь поможет. jQuery вызовет событие «прокрутка», если введенный текст шире, чем ширина ввода. К сожалению, событие «прокрутка» не срабатывает, если текст вводится с помощью JavaScript. Кроме того, этот пример не сокращает ввод, если пользователь уменьшает текст.
$('input[type=text]').on('scroll.input-expander', function(event, element){
$(this).css('width','100%');
$(this).unbind('scroll.input-expander');
});
Edit:
Я только что понял, что событие прокрутки срабатывает только тогда, когда курсор выходит за край ввода.