O evento onfocus
Definição e uso
O evento onfocus ocorre quando um elemento obtém foco.
O evento onfocus é mais frequentemente usado com <input>, <select> e <a>.
Dica: O evento onfocus é usado com Evento onblurao contrário.
Dica: O evento onfocus é semelhante a Evento onfocusin. A principal diferença é que o evento onfocus não borbulha. Portanto, se você quiser determinar se um elemento ou um de seus filhos obteve foco, você pode usar o evento onfocusin. Mas, você pode usar o evento onfocus para Método addEventListener()do useCapture Para fazer isso, use os parâmetros.
Exemplo
Exemplo 1
Executar JavaScript ao campo de entrada obter foco:
<input type="text" onfocus="myFunction()">
Na parte inferior da página há mais exemplos TIY.
Sintaxe
No HTML:
<element onfocus="myScript">
No JavaScript:
object.onfocus = function(){myScript};
No JavaScript, use o método addEventListener():
object.addEventListener("focus", myScript);
Notas:O Internet Explorer 8 ou versões anteriores não suportam Método addEventListener()。
Detalhes técnicos
Bubbling: | Não suportado |
---|---|
Cancelável: | Não suportado |
Tipo de evento: | FocusEvent |
Tags HTML suportadas: | Todos os elementos HTML, exceto: <base>, <bdo>, <br>, <head>, <html>, <iframe>, <meta>, <param>, <script>, <style> e <title> |
Versão do DOM: | Eventos de Nível 2 |
Suporte do navegador
Eventos | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
onfocus | Suporte | Suporte | Suporte | Suporte | Suporte |
Mais exemplos
Exemplo 2
Uso conjunto do evento onfocus e onblur:
<input type="text" onfocus="focusFunction()" onblur="blurFunction()">
Exemplo 3
Limpar o campo de entrada focado:
<!-- Substitua o valor atual do campo de entrada ao obter o foco por uma string vazia --> <input type="text" onfocus="this.value=''" value="Blabla">
Exemplo 4
Delegação de eventos: configure o parâmetro useCapture da função addEventListener para true:
<form id="myForm"> <input type="text" id="myInput"> </form> <script> var x = document.getElementById("myForm"); x.addEventListener("focus", myFocusFunction, true); x.addEventListener("blur", myBlurFunction, true); function myFocusFunction() { document.getElementById("myInput").style.backgroundColor = "yellow"; } function myBlurFunction() { document.getElementById("myInput").style.backgroundColor = ""; } </script>
Exemplo 5
Delegação de eventos: uso do evento focusin (não suportado pelo Firefox):
<form id="myForm"> <input type="text" id="myInput"> </form> <script> var x = document.getElementById("myForm"); x.addEventListener("focusin", myFocusFunction); x.addEventListener("focusout", myBlurFunction); function myFocusFunction() { document.getElementById("myInput").style.backgroundColor = "yellow"; } function myBlurFunction() { document.getElementById("myInput").style.backgroundColor = ""; } </script>