Документ: метод hasFocus()
Базовая Широко доступная
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод hasFocus() интерфейса Document возвращает логическое значение, указывающее, имеет ли документ или какой-либо элемент внутри него фокус. Этот метод можно использовать для определения, имеет ли активный элемент документа фокус.
Примечание: При просмотре документа элемент с фокусом всегда является активным элементом в документе, но активный элемент не обязательно имеет фокус. Например, активный элемент в всплывающем окне, которое не находится в фокусе, не имеет фокуса.
Синтаксис
hasFocus()
Параметры
Нет.
Значение возврата
false если активный элемент в документе не имеет фокуса; true если активный элемент в документе имеет фокус.
Примеры
В следующем примере проверяется, имеет ли документ фокус. Функция checkPageFocus() обновляет элемент абзаца в зависимости от результата вызова document.hasFocus(). Открытие нового окна приведет к потере фокуса документом, а возвращение к исходному окну приведет к тому, что документ снова получит фокус.
HTML
<p id="log">Focus check results are shown here.</p> <button id="newWindow">Open new window</button>
JavaScript
const body = document.querySelector("body");
const log = document.getElementById("log");
function checkDocumentFocus() {
if (document.hasFocus()) {
log.textContent = "This document has focus.";
body.style.background = "white";
} else {
log.textContent = "This document does not have focus.";
body.style.background = "gray";
}
}
function openWindow() {
window.open(
"https://developer.mozilla.org/",
"MDN",
"width=640,height=320,left=150,top=150",
);
}
document.getElementById("newWindow").addEventListener("click", openWindow);
setInterval(checkDocumentFocus, 300);
Результат
Спецификации
| Спецификация |
|---|
| HTML # dom-document-hasfocus-dev |
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
hasFocus |
34 | 12 | 3 | 21 | 7 | 34 | 4 | 21 | 7 | 2.0 | ≤37 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Document/hasFocus