The onfocus
property of the GlobalEventHandlers
mixin is an EventHandler
that processes focus
events on the given element.
The focus
event is raised when the user sets focus on an element.
For onfocus
to fire on non-input elements, they must be given the tabindex
attribute (see Building keyboard accessibility back in for more details).
Note: The opposite of onfocus
is onblur
.
Syntax
target.onfocus = functionRef;
Value
functionRef
is a function name or a function expression. The function receives a FocusEvent
object as its sole argument.
Example
This example uses onblur
and onfocus
to change the text within an <input>
element.
HTML
<input type="text" value="CLICK HERE">
JavaScript
let input = document.querySelector('input'); input.onblur = inputBlur; input.onfocus = inputFocus; function inputBlur() { input.value = 'Focus has been lost'; } function inputFocus() { input.value = 'Focus is here'; }
Result
Try clicking in and out of the form field, and watch its contents change accordingly.
Specifications
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of 'onfocus' in that specification. |
Living Standard |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
onfocus | Chrome Full support Yes | Edge Full support 12 | Firefox Full support Yes | IE Full support Yes | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support Yes | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
In contrast to IE, in which almost all kinds of elements receive the focus
event, almost all kinds of elements on Gecko browsers do NOT work with this event.
See also
focus
event- Related event handler:
GlobalEventHandlers.onblur