aria-haspopup attribute (aria)
Screen Reader support level: partial (78/99)
On this page
About this feature
This attribute indicates the availability and type of interactive popup element, such as menu or dialog.
Aria 1.0 values are well supported, such as true
, false
, and menu
(which is the same as true
). New values such as dialog
, grid
, listbox
, and tree
are not supported. This lack of support might cause significant issues for screen reader users. For example, aria-haspopup="listbox"
being announced as aria-haspopup="menu"
could lead users to think that something the behaves like a native <select>
(listbox
) is a menu
.
Age of results
Results across all tests for this feature range from a year ago to 5 years ago. Detailed dates and version information can be found in associated tests.
Caution
Failing or partial results may be out of date. The oldest result is from 5 years ago. Consider running the associated tests and contributing results.
Expectations
What are expectations?
Screen Reader support by expectation
Expectation | JAWS | Narrator | NVDA | Orca | TalkBack | VoiceOver (iOS) | VoiceOver (macOS) |
---|
Chrome | Edge | Firefox | Edge | Chrome | Edge | Firefox | Firefox | Chrome | Safari | Safari |
---|
MUST convey the "false" value | supported | supported | supported | supported | supported | supported | supported | supported | supported | supported | supported |
---|
MUST convey the "dialog" value | supported | supported | supported | partial | supported | supported | supported | supported | partial | supported | supported |
---|
MUST convey the "grid" value | supported | supported | supported | partial | supported | supported | supported | supported | partial | supported | supported |
---|
MUST convey the "listbox" value | partial (1/2) | partial (1/2) | partial (1/2) | partial (1/2) | partial (1/2) | partial (1/2) | partial (1/2) | partial (1/2) | some partial support | supported | supported |
---|
MUST convey the "menu" value | supported | supported | supported | partial | supported | supported | supported | supported | supported | supported | supported |
---|
MUST convey the "tree" value | supported | supported | supported | partial | supported | supported | supported | supported | partial | supported | supported |
---|
MUST convey the "true" value (see note) | supported | supported | supported | some partial support | supported | supported | supported | partial (1/2) | partial (1/2) | supported | supported |
---|
Expectation: convey the "false" value
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Expectation: convey the "dialog" value
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Expectation: convey the "grid" value
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Expectation: convey the "listbox" value
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Expectation: convey the "menu" value
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Expectation: convey the "tree" value
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Expectation: convey the "true" value (see note)
Strength of this expectation for different types of assistive technologies:
- Screen Readers: MUST
- Voice Control: NA
Notes:
Since ARIA 1.1, the "true" value must be conveyed as the "menu" value. In ARIA 1.0, the "true" value simply conveys that a popup is available (not the type of popup). If applied to an ARIA 1.0 combobox, this should pass if the screen reader conveys that there is a popup.