по событию onBlur я могу получить текущий элемент, но мне надо запрограммировать разное поведение, в зависимости от того, по какому элементу кликнули.
Вероятно, вам нужен relatedTarget
: https://jsfiddle.net/yaymer/d6xv2bfe/
let listener = e => {
console.log(e.relatedTarget);
};
Array.from(
document.getElementsByTagName("button"),
btn => btn.addEventListener("blur", listener));
<button>Something</button>
<button>Something2</button>
По-моему, никак. document.activeElement
не прокатывает, поэтому остаётся только на фокус подписаться:
document.addEventListener('blur', function (event) {
console.log('blur: ', event.target.id, document.activeElement.id)
}, true)
document.addEventListener('focus', function (event) {
console.log('focus: ', event.target.id, document.activeElement.id)
}, true)
input { width: 3em; }
<input id="a"> <input id="b"> <input id="c"> <input id="d"> <input id="e">
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Реализовал у себя в проекте поддержку drag&drop функционала для элементов с классом draggableК сожалению, данная реализация ведет сея иногда странно:...
Знаю, что этот вопрос поднимался множество раз, и на него есть ответы, которые помогли многимНоя перепробовал все предложенные варианты,...