Я разрабатываю приложение (игру), которое можно контролировать с помощью клавиатуры. Проблема в том, что он также содержит некоторые элементы ввода по умолчанию (например, поля формы входа). Чтобы предотвратить реакцию игры на нажатия клавиш, когда пользователь вводит свои учетные данные, я делаю такую проверку:
if (isDef($("*:focus").attr("id")))
return;
Он отлично работает практически во всех основных браузерах, но IE. В Internet Explorer div также может сосредоточиться на них, и почти в каждом случае на него сосредоточен какой-то элемент на странице. Таким образом, я хочу проверить, не имеет ли какой-то элемент фокуса, но какой-то элемент, который может принимать ввод с клавиатуры, имеет фокус. В моем случае это ограничивается textarea или input. Как проверить, имеют ли элементы этих двух типов фокус?