когда элемент на странице теряет фокус, фокус всегда перемещается куда-то еще ... обработчик события размытия получает объект события, но я не вижу там ничего, что сообщало бы мне, куда направляется фокус.
как я могу это выяснить?
вот хотя бы частичный ответ: вы можете перехватить событие / mousedown /, которое всплывает и происходит до того, как фокус фактически изменится. если пользователь нажимает на вкладку вместо использования мыши, я не знаю, как это можно сделать!
Вы должны взглянуть на: https://developer.mozilla.org/en/XUL_Tutorial/Focus_and_Selection
Есть раздел под названием «Получение текущего сфокусированного элемента», который объясняет, как именно достичь того, что вам нужно, с помощью следующего кода:
function init(){ addEventListener("focus",setFocusedElement,true); } function setFocusedElement(){ var focused = document.commandDispatcher.focusedElement; document.getElementById("focused").value = focused.tagName; }
Удачи!