簡體   English   中英

可訪問性:aria-haspopup可以用於什么?

[英]Accessibility: what can aria-haspopup be used for?

我有權使用aria-haspopup適合子菜單(例如彈出上下文菜單或子級菜單)。 它用於jQuery UI Selectmenu ,也用於這個很棒的例子。

我無法找到的是aria-haspopup是否適用於以下兩個例子:

  • 信息彈出窗口,例如Bootstrap ,用於上下文信息,但不包含任何鏈接
  • 彈出瀏覽器窗口 - 例如帶有target="_blank"鏈接

aria-haspopup在這些情況下是否合適? 如果沒有,是否應該使用ARIA屬性?

正式地它應該只用於菜單或子菜單,來自ARIA規范1.0

表示該元素具有彈出上下文菜單或子級菜單。

Whatsock風格指南涵蓋了“模態”部分:

通過向觸發元素添加屬性aria-haspopup =“true”來通知屏幕閱讀器用戶附加“Popup”可能聽起來是個好主意,但這不是一個好主意。 ...簡而言之,除非您觸發菜單,否則不要使用aria-haspopup。

一些關於在未來版本中擴展意義的討論 ,但目前假設它是針對菜單的。

我給出了一個關於Bootstrap的工具提示的答案,這應該有所幫助。

對於彈出式瀏覽器窗口,無論如何都會由屏幕閱讀器宣布,不需要額外的標記。 (注意:有助於為屏幕放大鏡用戶提供新窗口的可視指示器。)

WAI-ARIA 1.1規范(在撰寫本文時是當前的規范) 擴展了aria-haspopup與1.0規范相比的使用

[ aria-haspopup ]指示可由元素觸發的交互式彈出元素(例如菜單或對話框)的可用性和類型。

彈出元素通常顯示為位於其他內容之上的內容塊。 作者必須確保用作彈出內容容器的元素的角色是menulistboxtreegriddialog ,並且aria-haspopup的值與彈出容器的角色匹配。

因此,您應該將aria-haspopup的值設置為與觸發元素上的role屬性相同的值。 如果設置為true ,它將被解釋為menu以與1.0規范對齊,其中aria-haspopup僅用於菜單。

但請注意這個工具提示(如Bootstrap popovers):

在此上下文中, tooltip不被視為彈出窗口。

彈出瀏覽器窗口不是頁面上的HTML元素,因此具有target="_blank"錨元素不應具有aria-haspopup屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM