Как убрать фокус, используя jQuery?

Не так принципиально, какой библиотекой мы воспользуемся, когда будем убирать фокус, я привык использовать jQuery. Потому речь пойдет в контексте этой библиотеки.

Сложностей с тем как снять фокус с элемента традиционно больше, чем с тем, как его установить. Связано это прежде всего с названием события — blur. Т.е. не onfocus, не looseFocus и т.п, как можно ожидать.

Выполнить действие можно одной командой, например:

Т.е. нужно использовать вызов функции blur() без параметров. Вызываются все обработчики, связанные с этим событием.

Если потеря фокуса должна быть отложенной (т.е. через некоторое время), то можно прибегнуть к старому трюку с setTimeout().

Главное не ошибиться с контекстами, вот так работать будет:

После получения фокуса, пройдет 2 секунды и textarea потеряет фокус ввода.

А вот так нет:

Вот так работать будет, но не так как надо:

Все обработчики события blur будут вызваны, но мы находится внутри обработчика focus, курсор при этом из textarea не пропадет.

Мало букафф? Читайте есчо !

Ajax в Drupal 7

Август 31, 2015 г.

Расскажу про использование техники ajax в рамках движка Drupal. Начнем с теоретических моментов. Во-первых, чтобы получить какие то данные с веб-сайта под Drupal, нужно чтобы соответствующий адрес существовал на сайте. Во-вторых, нам не хотелось бы ...

Читать

Подключаем fancybox в Drupal 6

Сентябрь 1, 2013 г.

Fancybox - известный плагин jQuery для создания эффекта "просмотра в окошке". Давайте подключим его в 6-ю версию Drupal. Ряд "деятелей" предлагают поставить для этой цели, кроме самой библиотеки, ещё два плагина - jquery_update и fancybox. Определенный ...

Читать

Кнопка "Вверх" с анимацией прокрутки окна

Февраль 16, 2020 г.

Ставший уже привычным элемент навигации внутри страницы - кнопка "Вернуться к началу страницы". Разберем как реализовать эту функцию. План следующий: Создать HTML код кнопки; (БОНУС) Прятать кнопку, если мы и так уже в самом верху страницы. ...

Читать

Ошибка в Drupal: once is not a function

Май 8, 2023 г.

В Drupal 9/10 нет jQuery плагина once(), потому при использовании этой функции вы увидите сообщение о том, что once - не является функцией. Плагин удобен, но его не сложно заменить в коде буквально парой вставок. Он работает по следующему алгоритму ...

Читать
 

Комментарии к «Как убрать фокус, используя jQuery?»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: