O método Document.hasFocus() retorna um valor Boolean que indica se o documento ou qualquer elemento dentro do documento está com o foco ativo. Este método pode ser usado para determinar se o elemento ativo em um documento tem foco.

Quando se está visualizando um documento, um elemento com focus é sempre o ativo no mesmo, mas um elemento ativo não necessariamente tem o foco. Por exemplo, um elemento ativo com uma janela (popup) que não é a principal não tem foco.

Sintaxe

focused = document.hasFocus();

Valor retornado

false se o elemento ativo no documento não tem foco; true se o elemento ativo no documento tem foco.

Exemplo

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>TEST</title>
<style>
#message { font-weight: bold; }
</style>
<script>
setInterval( checkPageFocus, 200 );

function checkPageFocus() {
  var info = document.getElementById("message");

  if ( document.hasFocus() ) {
    info.innerHTML = "O documento tem o foco.";
  } else {
    info.innerHTML = "O documento não tem o foco.";
  }
}

function openWindow() {
  window.open (
    "http://developer.mozilla.org/",
    "mozdev",
    "width=640,
    height=300,
    left=150,
    top=260"
  );
}
</script>
</head>
<body>
  <h1>Exemplo do JavaScript hasFocus</h1>
  <div id="message">Esperando por ação do usuário</div>
  <div><button onclick="openWindow()">Abre uma nova janela</button></div>
</body>
</html>

Especificação

Especificação Estado Comentário
HTML Living Standard
The definition of 'Document.hasFocus()' in that specification.
Padrão em tempo real Definição inicial

Compatibilidade de navegadores

Estamos convertendo nossos dados de compatibilidade para o formato JSON. Esta tabela de compatibilidade ainda usa o formato antigo, pois ainda não convertemos os dados que ela contém. Descubra como você pode ajudar!

Funcionalidade Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico 30 3.0 (1.9) 6.0 Não suportado (Yes)
Funcionalidade Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico ? 1.0 (1.9) ? Não suportado ?

 

Veja também

Etiquetas do documento e colaboradores

Colaboradores desta página: renatoluna
Última atualização por: renatoluna,