jQuery метод .blur()
Определение и применение
jQuery метод .blur() привязывает JavaScript обработчик событий "blur" (потеря фокуса элементом), или запускает это событие на выбранный элемент.
jQuery синтаксис:
Синтаксис 1.0:
$( selector ).blur() // метод используется без параметров
$( selector ).blur( handler )
handler - Function( Event eventObject )
Синтаксис 1.4.3:
$( selector ).blur( eventData, handler )
eventData - Anything
handler - Function( Event eventObject )
Обращаю Ваше внимание, что метод .blur(), используемый вместе с функцией, переданной в качестве параметра (handler) является, короткой записью метода .on(), а без параметра является короткой записью метода .trigger():
$( selector ).on( "blur", handler )
$( selector ).trigger( "blur" )
Добавлен в версии jQuery
1.0 (синтаксис обновлен в версии 1.4.3)Значения параметров
| Параметр | Описание |
|---|---|
| eventData | Объект, содержащий данные, которые будут переданы в обработчик событий. |
| handler |
Функция, которая будет выполнена каждый раз, когда событие срабатывает. Функция в качестве параметра может
принимать объект Event.
|
Пример использования
Пример использования jQuery метода .blur() (без параметров и с функцией)
Нажмите ▶, затем выполните действие из пояснения. Измените JavaScript и запустите пример ещё раз. В редакторе используется jQuery 3.1.1.
index.html
<button>Клик</button><br />
<input />
main.js
$(document).ready(function () {
$('button').click(function () {
$('input').blur()
})
$('input').focus(function () {
$('input').attr('placeholder', 'focus')
})
$('input').blur(function () {
$('input').attr('placeholder', 'blur')
})
})
Нажмите ▶, чтобы запустить пример.
В этом примере с использованием jQuery метода .blur() мы при нажатии на элемент
<button>
(кнопка) вызываем событие "blur" на элементе
<input>. Самому элементу
<input>
задаем, что при срабатывании события "blur" на элементе выполнить функцию, которая с использованием метода
.attr() добавляет
атрибут
placeholder
со значением blur.
Кроме того, мы с использованием jQuery метода
.focus()
устанавливаем, что при получении фокуса элементом
<input>
вызвать функцию, которая с использованием метода
.attr() добавляет
атрибут
placeholder
со значением focus.
Рассмотрим следующий пример, в котором мы используем jQuery метод .blur() с двумя параметрами:
Пример использования jQuery метода .blur() (с двумя параметрами)
Нажмите ▶, затем выполните действие из пояснения. Измените JavaScript и запустите пример ещё раз. В редакторе используется jQuery 3.1.1.
index.html
<input />
<span></span>
main.js
$(document).ready(function () {
var eventData = { myData: 'information here' }
$('input').blur(eventData, function (event) {
$('span').text('eventData: ' + event.data.myData)
})
})
Нажмите ▶, чтобы запустить пример.
В этом примере с использованием jQuery метода .blur() мы при при потере фокуса элементом
<input>
задаем функцию, которая передает данные в объект события Event (значение созданной переменной) и методом
.text() выводим в
элементе
<span>
эти данные с использованием свойства data объекта Event.