--- title: GlobalEventHandlers.onfocus slug: Web/API/GlobalEventHandlers/onfocus tags: - API - Event Handler - GlobalEventHandlers - HTML DOM - Property - Reference translation_of: Web/API/GlobalEventHandlers/onfocus ---
{{domxref("GlobalEventHandlers")}} ミックスインの onfocus プロパティは、与えられた要素上の focus イベントを処理する {{event("Event_handlers", "event handler")}} です。
focus イベントは、ユーザーがある要素にフォーカスを設定した時に生じます。
非 input 要素上で onfocus を発生させるには、{{htmlattrxref("tabindex")}} 属性が与えられていなければなりません (詳細は Building keyboard accessibility back in を参照)。
補足: onfocus の反対が {{domxref("GlobalEventHandlers.onblur", "onblur")}} です。
target.onfocus = functionRef;
functionRef は関数名または 関数式 です。この関数は、{{domxref("FocusEvent")}} オブジェクトとその 1 個の引数を受け取ります。
この例は、{{domxref("GlobalEventHandlers.onblur", "onblur")}} および onfocus を使用して {{HtmlElement("input")}} 要素内のテキストを変更します。
<input type="text" value="ここをクリック">
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';
}
フォームフィールドの内側と外側をクリックしてみてください。それに応じてコンテンツが変化するか観察してください。
{{EmbedLiveSample('Example')}}
| 仕様書 | 策定状況 | 備考 |
|---|---|---|
| {{SpecName('HTML WHATWG','webappapis.html#handler-onfocus','onfocus')}} | {{Spec2('HTML WHATWG')}} |
{{Compat("api.GlobalEventHandlers.onfocus")}}
IE とは対称的に、focus イベントを受け取るほとんどすべての要素では、Gecko ブラウザー上のほとんどすべての要素において、このイベントが動作しません。