ARIA: aria-haspopup 屬性

aria-haspopup 屬性用於指示在設定了該屬性的元素上可以觸發的互動式彈出元素的可用性和型別。

描述

在 ARIA 中,當觸發顯示在其他內容之上的互動式選單、列表框、樹、網格和對話方塊時,它們被視為“彈出視窗”。這些彈出視窗由頁面上的一個或多個互動式元素觸發。互動式元素將觸發的彈出視窗的可用性和型別應使用 aria-haspopup 狀態進行標識。

存在 aria-haspopup 屬性,並帶有六個列舉值之一:menulistboxtreegriddialogtrue,表示該元素可以觸發彈出視窗以及將顯示哪種型別的彈出視窗。反過來,彈出視窗的元素必須具有指示的角色。值 true 等同於 menu。任何其他值,包括空字串或其他 角色,都將被視為設定了 false

在此上下文中,tooltip 不被視為彈出視窗,因為它不具有互動性。

注意:請確保作為彈出視窗內容容器的元素的角色是 menulistboxtreegriddialog,並且 aria-haspopup 的值與彈出視窗容器的角色相匹配。

aria-haspopup 狀態通知輔助技術使用者存在一個彈出視窗及其型別,但不提供任何互動性。為了使彈出視窗可以透過鍵盤訪問,請確保帶有 aria-haspopup 的元素是可聚焦的並且能夠觸發彈出視窗,存在用於開啟彈出視窗的鍵盤機制,並且彈出視窗元素管理其所有後代的焦點。

注意: ARIA 不實現可訪問的功能。ARIA 僅傳達您功能的預期行為。

建立 menubar 時,父級 menuitem 應設定 aria-haspopup="menu"(或 true)。任何開啟選單的按鈕都應具有 button 角色,或者最好是 <button> 元素,並且還應設定 aria-haspopup="menu"(或 true)。帶有彈出選單的 Tab 元素也應設定 aria-haspopup="menu"。請注意,不應使用 menubar 來建立網站導航。

注意: 具有 combobox 角色的元素具有隱式的 aria-haspopup 值為 listbox

false(預設)

該元素沒有彈出視窗。

true

彈出視窗是選單。

彈出視窗是選單。

listbox

彈出視窗是列表框。

tree

彈出視窗是樹。

grid

彈出視窗是網格。

dialog

彈出視窗是對話方塊。

相關介面

Element.ariaHasPopup

Element 介面的 ariaHasPopup 屬性反映了 aria-haspopup 屬性的值,該屬性指示了由元素觸發的互動式彈出元素(例如選單或對話方塊)的可用性和型別。

ElementInternals.ariaHasPopup

ariaHasPopup 屬性是 ElementInternals 介面的一部分,它反映了 aria-haspopup 屬性的值。

相關角色

用於角色

繼承到角色

規範

規範
無障礙富網際網路應用程式 (WAI-ARIA)
# aria-haspopup

另見