#javascript #jquery #dom
#javascript #jquery #dom
Вопрос:
кто-нибудь здесь использует плагин jQuery Elastic?
Довольно удобно, но я просто не нахожу способа запретить скрипту слегка изменять высоту текстовой области при нажатии из нее. Просто выполните тест: увеличьте область, введя что-нибудь, и щелкните вне текстовой области.
Это расстраивает и дает плохой опыт, поскольку у меня есть кнопка внизу моей текстовой области, которая также перемещается затем. Есть идеи?
Ответ №1:
Просто инициализируйте его с помощью $('#container').elastic().trigger('blur')
Это приведет к запуску команд, которые выполняются после события размытия, изменяя размер текстового поля.
Комментарии:
1. это просто запускает событие при инициализации страницы, но я запускаю другое событие размытия, когда заканчиваю печатать, и оставляю текстовую область, поэтому она не работает…
2. я подумал вот о чем: ваша проблема в том, что он автоматически изменяет размер, даже если вы не меняете текст, и это меняет положение вещей. итак, я просто переместу вещи первым делом, чтобы пользователь не заметил, что они перемещаются позже.
Ответ №2:
добавьте наведение курсора мыши к привязке события:
$textarea.bind('blur mouseout',function(){
в строке 140.
Ответ №3:
Я столкнулся с той же проблемой, и после долгих поисков я нашел решение. вот что вам нужно изменить в файле Jquery Elastic JS.
Найдите следующую строку.
minheight = parseInt ............
и измените его с помощью этой строки.
minheight = parseInt($textarea.css('height'),5) || lineHeight*2,
Это должно решить проблему щелчка за пределами текстовой области и изменения размера поля.