このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
aria-haspopup
aria-haspopup 属性は、属性が設定されている要素によってトリガーできる対話可能なポップアップ要素の可用性とタイプを示します。
In this article
解説
ARIA では、表示されることがトリガーされたときに他のコンテンツの上に表示される対話可能なメニュー、リストボックス、ツリー、グリッド、ダイアログは、「ポップアップ」と見なされます。これらのポップアップは、ページ上の 1 つ以上の対話可能要素によってトリガーされます。対話可能要素によってトリガーされるポップアップの可用性とタイプは、aria-haspopup 状態で識別される必要があります。
menu、listbox、tree、grid、dialog、またはtrue の 6 つの列挙値のいずれかを持つaria-haspopup の存在は、要素がポップアップをトリガーできることと、どの種類のポップアップが表示されるかを示します。次に、ポップアップする要素は、指定されたロールを持つ必要があります。true はmenu と同じです。空の文字列や他のロール を含むその他の値は、false が設定されているものとして扱われます。
tooltip は対話可能ではないため、この文脈ではポップアップとは見なされません。
メモ:ポップアップコンテンツのコンテナーとして機能する要素のロールがmenu、listbox、tree、grid またはdialog であり、aria-haspopup の値がポップアップコンテナーのロールと一致していることを確認してください。
aria-haspopup 状態は、ポップアップがあることとポップアップの種類を支援技術ユーザーに通知しますが、対話性は提供しません。ポップアップをキーボードでアクセス可能にするには、aria-haspopup を持つ要素がフォーカス可能でポップアップをトリガーできること、ポップアップを開くためのキーボードメカニズムがあること、およびポップアップ要素がその子孫すべてのフォーカスを管理していることを確認してください。
メモ:ARIA はアクセシブルな機能を有効にするものではありません。ARIA は機能の意図された動作を伝えるだけです。
menubar を作成する場合、親のmenuitem にはaria-haspopup="menu"(またはtrue )を設定する必要があります。メニューを開くボタンにはbutton ロールを設定するか、できれば<button> 要素である必要があり、さらにaria-haspopup="menu"(またはtrue )を設定する必要があります。ポップアップメニューを持つTab 要素にもaria-haspopup="menu" を設定する必要があります。Webサイトのナビゲーションを作成するためにmenubar を使用しないでください。
メモ:combobox ロールを持つ要素には暗黙的なlistbox がaria-haspopup の値として設定されます。
値
関連インターフェイス
Element.ariaHasPopupElementインターフェイスの一部であるariaHasPopupプロパティは、要素によってトリガーできるメニューやダイアログなどの対話可能なポップアップ要素の可用性とタイプを示すaria-haspop属性の値を反映します。ElementInternals.ariaHasPopupElementInternalsインターフェイスのプロパティはariaHasPopup属性の値を反映します。
関連付けられたロール
使用するロール:
継承先のロール:
仕様書
| Specification |
|---|
| Accessible Rich Internet Applications (WAI-ARIA)> # aria-haspopup> |
関連情報
aria-controlsmenulistboxtreegriddialog- Toolbar example - W3C WAI ARIA practices