Skip to content
← Back to rules

jsx-a11y/no-autofocus 正しさ

An auto-fix is available for this rule.

何を実行するか

autoFocus プロパティが要素に使用されないように制約します。

なぜこれは良くないのか

autoFocus を使用すると、視覚を持つユーザーと視覚のないユーザーの両方にとって使い勝手が悪くなる可能性があります。ユーザー入力なしにフォーカスが移動すると混乱を招き、補助技術との干渉も起こる可能性があります。フォーカスの移動タイミングと場所は、ユーザー自身がコントロールすべきです。

このルールに違反する不正なコードの例:

jsx
<div autoFocus />
<div autoFocus="true" />
<div autoFocus="false" />
<div autoFocus={undefined} />

このルールに従う正しいコードの例:

jsx
<div />

設定

このルールは以下のプロパティを持つ設定オブジェクトを受け入れます。

忽視非DOM

type: boolean

default: false

開発者が作成したコンポーネントのチェックを行うかどうかを決定します。

使い方

設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:

json
{
  "plugins": ["jsx-a11y"],
  "rules": {
    "jsx-a11y/no-autofocus": "error"
  }
}
bash
oxlint --deny jsx-a11y/no-autofocus --jsx-a11y-plugin

参照