Представим себе ситуацию, когда у нас есть красивая форма фиксированной ширины. В форме есть тег textarea
, который вмещает в себя, допустим, 1000 символов. По умолчанию, видна лишь часть текста в этом теге. Но нам хочется просмотреть весь этот текст. Добавим немного jQuery
, заставив это поле увеличиваться по ширине при получении фокуса.
Допустим, у нас на странице есть элемент textarea:
<form> <textarea></textarea> </form>
Изначально этот элемент имеет размеры 250px x 125px
textarea { width: 250px; height: 125px; }
Чтобы заставить это поле ввода при получении фокуса изменить свою ширину, используем простенький сниппет:
$(function() { $("textarea").focus(function(){ $(this).width(500); }).blur(function(){ $(this).width(250); }); });
«Причесав» немного наш сниппет, добавив анимации, получим плавное увеличение ширины:
$(function() { $("textarea").focus(function(){ $(this).animate({ width:"500px"}, 1000); }).blur(function(){ $(this).animate({ width:"250px"}, 500); }); });
Живой пример
1
Источник: https://www.kobzarev.com/jquery/jquery-snippets-enlarge-input-fields-on-focus/