Мне нужно найти ранее сфокусированный элемент в моей функции focusin. Вот пример кода:
$('#id').on('focusin', function(event) {
//console.log(event.relatedTarget.nodeName); //doesn't work
}
Я провел некоторое исследование, и, хотя я видел, как некоторые люди говорили в сообщениях, что это работает только с событиями мыши, такими как mousedown и т.д., я столкнулся с несколькими статьями из авторитетных источников, в которых я полагаю, что это должно работать.
-
https://developer.mozilla.org/en-US/docs/DOM/event.relatedTarget Здесь Firefox специально упоминает, как event.relatedTarget возвращает "какой EventTarget теряет фокус" в "focusin" ' мероприятие. Firefox - это браузер, который я использую для этого.
-
http://www.w3.org/TR/DOM-Level-3-Events/#events-FocusEvent на этой закладке вы можете увидеть, что каждый FocusEvent имеет атрибут readonly, называемый связанной целью.
-
http://www.w3.org/TR/DOM-Level-3-Events/#event-type-focusIn Здесь они также заявляют, что "FocusEvent" имеет свойство "relatedTarget", которое является "целевым объектом, теряющим фокус" (если есть) ".
Итак, что я делаю неправильно здесь? Должно быть, это какая-то глупая синтаксическая ошибка или что-то в этом роде. Я не могу найти имя узла event.relatedTarget.
Обновление: я могу заставить его работать в IE, но это не будет работать в Firefox.
$("#id").on('focusin', function(event) {
$('#textbox').text(event.relatedTarget.nodeName);
}