Ответ 1
Вот как это делается (работает кросс-браузер):
$('input').blur(function() {
var that = this;
setTimeout(function() { $(that).focus(); }, 0);
});
Live demo: http://jsfiddle.net/jzt2Z/1/
Предотвращает ли jQuery такой тип поведения?
$("input").focusout(function() {
$(this).focus();
});
Вот как это делается (работает кросс-браузер):
$('input').blur(function() {
var that = this;
setTimeout(function() { $(that).focus(); }, 0);
});
Live demo: http://jsfiddle.net/jzt2Z/1/
1) На самом деле он работает в Chrome. Вот пример: http://jsfiddle.net/8WP53/
Как только первый вход получает focuseout - он остается сфокусированным, и пользователь не может сфокусировать любой другой вход
2) в IE я получаю сообщение об ошибке "Переполнение стека" (имя бренда StackOverflow.com:)
3) Странно, но в Firefox вы можете выбрать любой вход, но ошибка не создается