Как определить, какой элемент получает фокус в blur ()? - PullRequest
1 голос
/ 23 ноября 2010

Можно ли найти элемент, который в данный момент имеет фокус, кросс-браузерным способом?

В IE можно сделать $(x).blur(function(evt) { alert('Focus goes to ' + evt.toElement.id); });, и мне нужно сделать нечто подобное в других браузерах.

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

1 Ответ

0 голосов
/ 17 февраля 2013

Вы можете просто вспомнить, что было сосредоточено в переменной. Переменная область действия в JS работает кросс-браузерно:)

(function($){

var focused;
$(commonParentForElements).on('focus','input',function(e){
  focused = e.target;
}).on('blur','input',function(e){
  //do stuff with focused
  //when done, clean up
  focused = null;
})

})(jQuery);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...