Мне нужно сделать увеличение высоты textarea, когда оно заполняется текстом. Ранее я имел решение JavaScript/JQuery для этогоКак сделать textareas автоматическим изменением размера, используя только CSS?
function expandingTextBox(e) {
$(e).css({'height':'80', 'overflow-y':'hidden'}).height(e.scrollHeight);
}
$('textarea').each(function(){
expandingTextBox(80);
}).on('input', function() {
expandingTextBox(this);
});
И это почти служили цели. Вкратце, у меня есть всплывающее окно в моем веб-приложении, и я хочу иметь возможность перетаскивать объекты из другого места и выгружать их во всплывающем окне, создавая новые текстовые области, которые изменяют размер, чтобы соответствовать их содержимому. Эта функция меняет размер текстовых полей только по мере ввода.
Коллега считает, что я могу сделать это только с помощью CSS - нет плагинов для JavaScript или JQuery? Каждое другое решение, которое я нашел в interwebs, полагается, по крайней мере, на некоторый плагин JQuery (и я не могу легко загрузить новые плагины на мою машину на работе). Есть ли способ с помощью CSS?
Я попытался сменить текстовые поля на divs и использовать атрибут contenteditable. Это вызвало проблемы в других местах (но объяснить, почему) потребуется много времени.
Thx - Gaweyne
EDIT: Если это невозможно с чистым CSS, я принимаю решения, которые используют JavaScript или JQuery, что мне не нужно, чтобы загрузить дополнительные плагины для.
Посмотрите здесь: http://stackoverflow.com/questions/6907220/css-textarea-size –
Обратите внимание, что 'каждый 'метод ничего не делает. Он передает '80'' expandTextBox (e) ', а' $ (e) 'внутри функции возвращает пустую коллекцию. –
Не совсем такой же вопрос Акул, но спасибо. Плакат в этом потоке хочет, чтобы текстовые поля расширялись горизонтально. Решение, предлагаемое ему, не работает, а второе требует плагина JQuery, который я не смогу загрузить на своей машине. Но если кто-то спросил точно, что я прошу, и я только что пропустил это, скажите мне. – Gaweyne