Element: focus-Ereignis
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Das focus
-Ereignis tritt auf, wenn ein Element den Fokus erhält. Das Ereignis wird nicht weitergeleitet, jedoch wird das verwandte focusin
-Ereignis, das darauf folgt, weitergeleitet.
Das Gegenteil von focus
ist das blur
-Ereignis, das auftritt, wenn das Element den Fokus verloren hat.
Das focus
-Ereignis kann nicht abgebrochen werden.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
, oder setzen Sie eine Ereignisbehandlungs-Eigenschaft.
addEventListener("focus", (event) => { })
onfocus = (event) => { }
Ereignistyp
Ein FocusEvent
. Erbt von UIEvent
und Event
.
Ereigniseigenschaften
Beispiele
Einfaches Beispiel
HTML
<form id="form">
<label>
Some text:
<input type="text" placeholder="text input" />
</label>
<label>
Password:
<input type="password" placeholder="password" />
</label>
</form>
JavaScript
const password = document.querySelector('input[type="password"]');
password.addEventListener("focus", (event) => {
event.target.style.background = "pink";
});
password.addEventListener("blur", (event) => {
event.target.style.background = "";
});
Ergebnis
Ereignisdelegierung
Es gibt zwei Möglichkeiten, die Ereignisdelegierung für dieses Ereignis zu implementieren: durch Verwendung des focusin
-Ereignisses oder durch Setzen des useCapture
-Parameters von addEventListener()
auf true
.
HTML
<form id="form">
<label>
Some text:
<input type="text" placeholder="text input" />
</label>
<label>
Password:
<input type="password" placeholder="password" />
</label>
</form>
JavaScript
const form = document.getElementById("form");
form.addEventListener(
"focus",
(event) => {
event.target.style.background = "pink";
},
true,
);
form.addEventListener(
"blur",
(event) => {
event.target.style.background = "";
},
true,
);
Ergebnis
Spezifikationen
Specification |
---|
UI Events # event-type-focus |
HTML # handler-onfocus |
Browser-Kompatibilität
Siehe auch
- Die
HTMLElement.focus()
-Methode - Verwandte Ereignisse:
blur
,focusin
,focusout
- Dieses Ereignis auf
Window
-Zielen:focus
-Ereignis - Fokussierung: focus/blur