Обработчик события focusin

.focusin()

Устанавливает обработчик получения фокуса самим элементом или одним из его дочерних. Метод имеет два варианта использования:

.focusin(handler(eventObject)):jQuery1.0

Устанавливает функцию handler в качестве обработчика события focusin, на выбранные элементы.
Метод является аналогом bind("focusin", handler(eventObject)).

handler(eventObject) — функция, которая будет установлена в качестве обработчика. При вызове она будет получать объект события eventObject.

.focusin(eventData, handler(eventObject)):jQuery1.4.3

Метод отличается от предыдущего возможностью передавать в обработчик дополнительные данные.
Является аналогом bind("focusin", eventData, handler(eventObject)).

handler(eventObject) — см. выше.
eventData — дополнительные данные, передаваемые в обработчик. Они должны быть представлены объектом в формате: {fName1:value1, fName2:value2, ...}.

Убрать установленный обработчик можно с помощью метода unbind().

Метод хорошо сочетается с focusout() и плохо с blur() (оба являются методами потери фокуса).

В отличае от focus, событие focusin происходит как при получении фокуса самим элементом, так и его дочерними.

Пример

// установим обработчик события focusin, элементу с идентификатором foo
$('#foo').focusin(function(){
  alert('Элемент foo получил фокус.');
});
 
// установим еще один обработчик события focusin, на этот раз элементам 
// с классом block. В обработчик передадим дополнительные данные
$('.block').focusin({a:12, b:"abc"}, function(eventObject){
  var externalData = "a=" + eventObject.data.a + ", b=" + eventObject.data.b;
  alert('Элемент с классом block получил фокус. '+
        'В обработчик этого события переданы данные: ' + externalData );
});

Ссылки

Поисковые ключи:
  • получение фокуса
  • фокус получен элементом
  • обработка события focusin
  • обработчик события focusin
  • .focusin()
  • focusin()