Element: focusin event

The focusin event fires when an element is about to receive focus. The main difference between this event and focus is that focusin bubbles while focus does not.

The opposite of focusin is focusout.

Bubbles Yes
Cancelable No
Interface FocusEvent
Event handler property onfocusin
Sync / Async Sync
Composed Yes


Live example


<form id="form">
  <input type="text" placeholder="text input">
  <input type="password" placeholder="password">


const form = document.getElementById('form');

form.addEventListener('focusin', (event) => {
  event.target.style.background = 'pink';

form.addEventListener('focusout', (event) => {
  event.target.style.background = '';



Specification Status Comment
UI Events Working Draft Added info that this event is composed.
Document Object Model (DOM) Level 3 Events Specification Obsolete Initial definition

Browser compatibility

BCD tables only load in the browser

See also