aria-haspopup

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

描述

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

aria-haspopup 的存在,以及六個列舉值之一 - menulistboxtreegriddialogtrue - 指示元素可以觸發彈出視窗,以及將顯示哪種彈出視窗。依次,彈出的元素必須具有指示的角色。值 truemenu 相同。任何其他值,包括空字串或其他 角色,都將被視為設定了 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-haspopuplistbox

false(預設值)

該元素沒有彈出視窗。

true

彈出視窗是一個選單。

彈出視窗是一個選單。

listbox

彈出視窗是一個列表框。

tree

彈出視窗是一個樹。

grid

彈出視窗是一個網格。

dialog

彈出視窗是一個對話方塊。

關聯介面

Element.ariaHasPopup

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

ElementInternals.ariaHasPopup

ariaHasPopup 屬性(ElementInternals 介面的一部分)反映了 aria-haspopup 屬性的值。

關聯角色

規範

規範
可訪問的富網際網路應用程式 (WAI-ARIA)
# aria-haspopup

另請參閱