Typical HTML element support patterns by screen readers:
Announce roles of elements as the user moves through the content
Announce accessible names and/or descriptions of controls
Announce the text content of elements
Announce the start and end of elements
Change in voice or pitch as content is announced (e.g. to signify punctuation)
Announce states and properties of elements.
Emission of a beep or other sound when an element with a particular state or property receives virtual focus
Instructions on how to operate interactive elements such as form controls
Keyboard navigation, shortcuts and “quick access” lists showing all instances of particular elements on a page
Note: The combination of patterns supported varies from element to element. Support for (and announcements of) some elements can vary between screen reader software.
About JAWS
JAWS (Job Access With Speech) is a popular commercial screen reader for Windows. It works with all major browsers including Chrome, Firefox, and Edge.
Licences for JAWS must be purchased, but a free functional trial is available to use for up to 40 minutes at a time.
JAWS: quick commands
JAWS key: Insert (or Caps Lock, configurable) by default.
Start/stop JAWS: JAWS + F4
Toggle between "Reading" and "Forms" mode: JAWS + Z Note: The mode changes other keyboard interactions
Read all content: JAWS + ↓
Stop reading: Control
Elements list:
List all links: JAWS + F7
List all headings: JAWS + F6
Next/previous link: K / Shift + K
Next/previous heading: H / Shift + H
Next/previous landmark/region: R / Shift + R
Main landmark: Q
Next/previous form (edit) field: E / Shift + E
Tables:
Next/previous table: T / Shift + T
Navigate table cells: Control + Alt + Arrow keys (→ / ← / ↓ / ↑)
Start/end of row: Home / End
Start/end of column: Shift + Home / Shift + End
Start/end of a table: Control + Home / Control + End
Next/previous list: L / Shift + L
Next/previous list item: I / Shift + I
Next/previous graphic: G / Shift + G
HTML support
Support legend
means we have found this feature to be implemented interoperably (across multiple browsers)
means we have found that this feature is not implemented
means the element has no expected semantics.
means we are unsure whether this feature is supported, this may be due to lack of testing or lack of clarity around what 'support' of this feature is supposed to convey to the user.
JAWS HTML support table
JAWS (2026) HTML Support Chrome Version 155.0.8059.40 (Official Build) (64-bit) on Windows 11
Tab key navigation: aria-label text, link, to activate press Enter
Arrow key navigation: [Visited] link, aria-label text
With href:
List Links Insert + F7
Next Link Tab
Prior Link Shift + Tab
Next Visited V
Prior Visited Link Shift + V
Open Link Enter
Open Link in New Window Shift + Enter
Next Non Link Text N
Prior Non Link Text Shift + N
With href:
With href:
In all cases, JAWS announces the link role
In all cases, JAWS announces the link role before the link label when using reading keys like
the Arrow keys, but after the link label when using the Tab key
In all cases, JAWS announces instructions for activating the link when the link receives focus via the
Tab key, but not when the link receives focus via the Arrow keys
When a link has both visible text and a title
attribute (but no other attributes), JAWS announces the contents of both together
JAWS announces the contents of the aria-label attribute when it is
applied to the a element, not the visible text
JAWS announces the content referenced using the aria-describedby
attribute when the link receives focus via the Tab key, but not when
the link receives focus via the Arrow keys
When a link has different visible text, title text, aria-label
text, and content referenced via the aria-describedby attribute, JAWS only
announces the content of the aria-label attribute and the content referenced
using the aria-describedby attribute; the visible text is not announced (as expected),
nor is the content within the title attribute
When a link has the same visible text, title text, and
aria-label text, JAWS only announces the aria-label text
Link types:
Link: This indicates a link that
has not been visited.
Visited Link: This indicates a link
that has been visited. This is determined by your
browser history, not by which links have been selected
on the current Web page.
Same Page Link: This indicates a
link that moves you to another location on the same
page.
Send Mail Link: This indicates a
link that opens a new e-mail message using your
default e-mail program.
FTP Link: This indicates a link
that points to a FTP (File Transfer Protocol) server.
Additional notes:
The following from the JAWS help documentation does not appear to work and is not required:
"By Default, JAWS speaks the on screen text of a
link, but you can set JAWS to instead speak Title
text, assigned by the page author within the HTML
code. Title text normally provides supplemental
information about the link".
By default, JAWS announces the link type, but you
can disable this, so JAWS announces same page links,
send mail links, and FTP links as "link," or "Visited
Link."
JAWS can read title text associated with
abbreviations and acronyms on web pages. To enable this feature:
Open the Utilities menu
Select Settings Center
Expand the Web/HTML/PDFs group
Expand the Reading group
Navigate to the Expand Abbreviations option and press Spacebar
to check its checkbox
Navigate to the Expand Acronyms option and press Spacebar
to check its checkbox
By default
Via preference
No semantics conveyed by default
Note that expansions are not announced by default and
that expansions provided using the title attribute are not available to keyboard only
users.
Refer to Using the HTML title attribute.
When navigating into the map from above / below: contents of the alt attribute on the img element, image map, contents of the alt attribute on the area element, image map, link, graphic, to activate press Enter
When navigating to individual items within the map: contents of the alt attribute on the area element, image map, link, graphic, to activate press Enter
Arrow key navigation:
When navigating into the map from above / below: Image map, link, graphic, contents of the alt attribute on the area element
When navigating to individual items within the map: Image map, link, graphic, contents of the alt attribute on the area element
When navigating into the map from above / below: contents of the alt attribute on the img element, image map, contents of the aria-label attribute on the area element, image map, link, graphic, to activate press Enter
When navigating to individual items within the map: contents of the aria-label attribute on the area element, image map, link, graphic, to activate press Enter
Arrow key navigation:
When navigating into the map from above / below: Image map, link, graphic, contents of the aria-label attribute on the area element
When navigating to non-start / non-end squares within the map: Image map, link, graphic, contents of the aria-label attribute on the area element
List Links Insert + F7
Next Link Tab
Prior Link Shift + Tab
Next Visited Link V
Prior Visited Link Shift + V
Open Link Enter
Open Link in New Window Shift + Enter
Next Non Link Text N
Prior Non Link Text Shift + N
When navigating into the image map for the first time using the Tab key,
JAWS announces the contents of the alt attribute applied to the associated
img element. However, it does not announce the contents of this
alt attribute when navigating into the image map using the Arrow
keys.
When navigating into the image map for the first time using the Tab key,
JAWS announces the term image map twice: the first time in relation to the
associated img element, and a second time in relation to the associated
map element. However, it only announces the term image map
once when navigating into the map using the Arrow keys.
When navigating through individual images in the map using the Tab key,
JAWS announces the contents of the alt or aria-label attribute on
the area element first, and then announces the element's role and
instructions. When navigating through individual images in the map using the Arrow
keys, JAWS announces the contents of the element's role and instructions first, and then
announces the contents of the alt or aria-label attribute on
the area element.
From an aural point of view, there is no difference to using the aria-label
attribute as opposed to the alt attribute on the area element.
JAWS announces both in the same way.
Only partially supported:
The correct heading level is announced when the aria-level
attribute is set to aria-level="1" through
aria-level="6", but all aria-level
examples are reported as level 2 headings from aria-level="7"
to aria-level="12".
List Headings Insert + F6
Next Heading H
Prior Heading Shift + H
First Heading Alt + Insert + Home
Last Heading Alt + Insert + End
Next Heading at Level - number keys 1 through 6
Prior Heading at Level Shift + 1 through 6
First Heading at Level Alt + Ctrl + Insert + 1 through 6
Last Heading at Level Alt + Ctrl + Insert + Shift + 1 through 6
All aria-level exported reported as h2, except
in a small number of cases.
O / Shift + O key navigation (navigating to article container only):
Contents of the title attribute, article
Arrow key navigation (navigating to article container and its contents):
Contents of the title attribute, article contents,
contents of the title attribute element,
article end
Note: the contents of the title attribute are
announced after the first word in the body of the article contents is announced,
rather than alongside the article role when navigating into the article.
O / Shift + O key navigation (navigating to article container only):
Article
Arrow key navigation (navigating to article container and its contents):
Article, article contents, article end
Note: the referenced contents of the aria-describedby attribute
are not announced when navigating to the article container, either when using the
arrow keys or the O / Shift + O keys.
O / Shift + O key navigation (navigating to article container only):
Contents of the aria-label attribute, article
Arrow key navigation (navigating to article container and its contents):
Contents of the aria-label attribute on the article element,
article, article contents,
contents of the aria-label attribute on the article element,
article end
Note: the contents of the title attribute are
announced after the first word in the body of the article contents is announced,
rather than alongside the article role when the article container receives focus.
O / Shift + O key navigation (navigating to article container only):
Article
Tab key navigation (navigating to article container only):
article contents, article region
Arrow key navigation (navigating to article container and its contents):
Article, article contents, article end
Move to Next Article O
Move to Previous Article Shift + O
Article List Insert + Ctrl + O
Included as a navigable region < JAWS 2018
Possible bug: when the title attribute is
applied to the article element, JAWS does not announce the
contents of this attribute when navigating into the article. Instead, it announces the
contents of this attribute immediately after announcing the first word inside the article.
(Test AR-007)
R / Shift + R key navigation (navigating to aside container only):
visible text, complimentary information
Arrow key navigation (navigating to aside container and its contents):
visible text
Tab key navigation (navigating to aside container only):
visible text
Move to Next Region R
Move to Previous Region Shift + R
Select a Region Insert + Ctrl + R
Included as a navigable region
Possible bugs:
An issue occurs when the
title attribute is applied to the container
aside element:
In all cases, an whether the user navigates to the aside container
using the R / Shift + R keys or the Arrow
navigation keys, JAWS announces the first word inside the aside container
before anything else
(Test AS-005,
Test AS-007)
If a user navigates to an aside container that only includes a
title attribute using the R / Shift + R keys,
JAWS announces the contents of the title attribute twice
(Test AS-005)
An issue also occurs when the aria-describedby
attribute is applied to the container aside element. If
a user navigates to an aside container that only includes an
aria-describedby attribute using the R / Shift + R keys,
JAWS announces structural information about the referenced text (for example, "Heading"
to announce that the referenced text is a heading).
(Test AS-006)
Audio start, group start, contents of the aria-label attribute, audio player controls, group end, contents of the aria-label attribute, audio end
Tab key navigation:
One of the following (refer to notes):
Elapsed time, colon zero colon zero zero one zero zero, mute, group; or
contents of the aria-label attribute, group
If the audio element has a controls attribute the buttons in the UI are navigable using button commands.
Controls in the audio player are accessible.
Possible bugs:
JAWS does not announced the content referenced by the aria-describedby
attribute when the container audio element receives focus
(either using reading keys or the Tab key)
(Test AU-003)
JAWS does not announce the role and accessible name of the player consistently when the audio container receives Tab focus; it sometimes announces the role and state, but other times it announces
random content within the player. To resolve this, a user can navigate to the Play button and then press the Shift + Tab keys to navigate back to the container, at which point
the correct role and name information is conveyed. (Test AU-001, Test AU-002, Test AU-003)
contents of the aria-label attribute, toggle button, pressed
Tab key navigation:
contents of the aria-label attribute, toggle button, pressed, to toggle the state press Spacebar
Arrow key navigation:
contents of the aria-label attribute, toggle button, pressed
List Buttons Ctrl + Insert + B
Next Button B
Previous button Shift + B
Semantics conveyed via navigation and element name.
JAWS announces instructions for activating the button
("To activate, press Enter") when it receives focus
via the Tab / Shift + Tab keys. However, JAWS does not
announce instructions for activating the button when it receives focus via
the Arrow or B / Shift + B keys.
When the disabled attribute is present on the button, JAWS skips
the button entirely when navigating the page using the
Tab / Shift + Tab keys and
B / Shift + B. However, JAWS announces the name and role
of the button, along with its state ("unavailable") when navigating the page using
the Arrow keys.
When aria-pressed="true" is applied to the button, JAWS announces
it as a "toggle button", and the instructions are updated to: "To toggle the state,
press Spacebar".
The canvas is 'transparent' for screen reader users.
HTML content included in the HTML5
canvas sub DOM is announced and navigable by screen
reader users and is navigable by keyboard users.
Note: developers are advised to add
role=presentation to canvas to avoid unnecessary repetition of graphic
role information.
No semantics conveyed or expected as code currently has a
role="generic".
JAWS announces special characters inside the code element literally,
for example it announces "less" for the "<" character and "greater" for the
">" character.
Test DI-001: datalist with input:
(when data list is expanded and focus moves to the first option using the Down arrow key):
autofill list box expanded, visible option text 1 of N, to move to an item press the arrow keys
Test DI-002: datalist with input and aria-label:
(when data list is expanded and focus moves to the first option using the Down arrow key):
autofill list box expanded, visible option text 1 of N, to move to an item press the arrow keys
No special commands
JAWS announces "autofill list box expanded" when navigating into content marked
up using the datalist element. The application of the aria-label
attribute on the datalist element has no effect; JAWS does not announce
the contents of the aria-label attribute as the list's accessible name.
Due to the application of tabindex="0" on the container
dl element, the entire list contents - included the contents of
dd elements in the list - are announced as a single block.
No semantics conveyed. JAWS does not distinguish between dt and
dd elements. Only the container dl element is announced
as a list element.
Included as part of dt list item, user
must use arrow down for content to be
announced. If user navigates via list item navigation
(Next Item in a List I) from dt then dd content will not be
announced.
[When navigating into the group] Group, start, contents of the aria-label attribute
[When navigating out of the group] Group, end, contents of the aria-label attribute
Tab key navigation:
contents of the aria-label attribute, group
No special commands
JAWS makes no special announcement when the details element receives focus
(either using reading keys or the Tab key) unless the element includes an
accessible name.
Contents of the aria-label attribute, modal dialog, dialog contents, including the role and accessible name of the control that has received keyboard focus
Contents of the aria-label attribute, modal dialog, Dialog heading, first paragraph, and the role and accessible name of the control that has received keyboard focus
Contents referred to from the aria-labelledby attribute, modal dialog, contents referred to from the aria-describedby attribute, and the role and accessible name of the control that has received keyboard focus
When the dialog opens focus is moved to first focusable element. dialog can be
closed with the ESC key. Upon closing focus moves back to the trigger control. While displayed
focus is contained within the dialog.
Note: focus is contained within the dialog, but the browser address bar is included
within the focus order. This is a browser implemented behaviour.
Possible bug: when tabindex="-1" is applied to the
dialog element, JAWS does not announce the dialog's role or accessible
name (if provided). JAWS only announces the contents of the dialog.
Due to the application of tabindex="0" on the container
dl element, the entire list contents - included the contents of
dt elements in the list - are announced as a single block.
Arrow key navigation to and from fieldset container:
Group start, legend element text, group contents, group end, element text
Tab key navigation into fieldset contents:
JAWS' instructions for operating form controls inside the fieldset,
legend element text, group,
role, name, state, and any further instructions associated with the
first element in the fieldset that receives keyboard focus
Arrow key navigation to and from fieldset container:
Group start, heading level [heading level], legend element text, group contents, group end
Tab key navigation into fieldset contents:
JAWS' instructions for operating form controls inside the fieldset,
legend element text, group,
role, name, state, and any further instructions associated with the
first element in the fieldset that receives keyboard focus
Arrow key navigation to and from fieldset container:
Group start, legend element text, group contents, group end
Tab key navigation into fieldset contents:
JAWS' instructions for operating form controls inside the fieldset,
contents of the element referenced by the aria-labelledby attribute
on the fieldset element, group,
role, name, state, and any further instructions associated with the
first element in the fieldset that receives keyboard focus
Arrow key navigation to and from fieldset container:
Group start, contents of the aria-label attribute,
group contents,
Group end, contents of the aria-label attribute
Tab key navigation into fieldset contents:
JAWS' instructions for operating form controls inside the fieldset,
contents of the aria-label attribute, group,
role, name, state, and any further instructions associated with the
first element in the fieldset that receives keyboard focus
Arrow key navigation to and from fieldset container:
group contents
Tab key navigation into fieldset contents:
role, name, state, and any further instructions associated with the
first element in the fieldset that receives keyboard focus
No special commands, fieldset presence and accessible
name announced when first control child is navigated to
using virtual keys navigation keys for the child control.
When a fieldset has a legend that does not
include additional markup (such as a heading), JAWS announces the
group role and the legend text as a single string when navigating into
the fieldset using the Down arrow key (Test FLGND-001)
When a fieldset has a legend that does
include additional markup (such as a heading (Test FLGND-002)
or an aria-labelledby attribute (Test FLGND-003)), JAWS only announce the group role when navigating
into the fieldset using the Down arrow key; the user must press the Down
arrow key a second time to hear the legend text
When using the Down arrow key to navigate into a fieldset that includes an aria-labelledby that
references content outside of the associated legend, JAWS prioritises and announces the legend text in place of the
aria-labelledby referenced text (Test FLGND-003)
When using the Tab key to navigate into a fieldset that includes an aria-labelledby that
references content outside of the associated legend,
JAWS prioritises and announces the aria-labelledby referenced text in place of
the legend text (Test FLGND-003)
When the aria-label attribute is applied to the legend element,
JAWS announces the contents of the aria-label rather than the visible
legend text. (Test FLGND-004)
When a fieldset is missing an accessible name entirely (either via the
legend element or a suitable equivalent, such as the aria-label
or aria-labelledby attributes to provide an accessible name), no
semantics are conveyed by JAWS (Test FLGND-005)
Role information (group) is only announced when the figure has an accessible name:
When the figure receives focus via the Down arrow key, JAWS does not announce the group role when only the figcaption element is
present (Test FG-005),
and does not announce the group role if the figure element is missing an accessible name
altogether (Test FG-001)
When the figure receives focus via the Down arrow key, JAWS announces the group role when the
aria-label (Test FG-002),
aria-labelledby (Test FG-003)
or title (Test FG-004
and Test FG-007)
attributes are used to provide an accessible name for the figure
When the figure receives focus via the Down arrow key,
JAWS does not announce the contents referenced by the aria-describedby
attribute; the user must navigate to this content separately
(Test FG-006)
Not announced or reachable using the above keystrokes
Arrow key navigation:
title contents, element contents
Note: the contents of the title attribute are announced
after the first word in footer is announced.
Move to Next Region R
Move to Previous Region Shift + R
Select a Region Insert + Ctrl + R
When the body element represents the sectioning content / root
of the footer element (Test FT-001):
Users can navigate to the region using JAWS' region navigation keys, JAWS
announces the footer role ("content information"), and
JAWS announces the accessible name and / or accessible description provided for
the footer using an appropriate method, such as aria-label,
aria-labelledby, or aria-describedby
Possible bug: JAWS does not announce the role of the
footer
when navigating into it using the Down arrow key, nor does it
announce the accessible name and / or accessible description provided for the
footer using an appropriate method, such as aria-label,
aria-labelledby, or aria-describedby
When the body element is not the sectioning / root
of the footer element, for example it is embedded within an
article element (all other tests):
Users can not navigate to the region using JAWS' region navigation keys
JAWS does not announce the footer role; it only announces the footer element's contents
JAWS does not announce the accessible name and / or accessible description
provided for
the footer using an appropriate method, such as aria-label,
aria-labelledby, or aria-describedby, when navigating into
the footer using the Down arrow key
Possible bug: when the title attribute is applied to
the footer element, JAWS does not announce the contents of this
attribute when navigating into the footer. Instead, it announces the
contents of this attribute immediately after announcing the first word inside the
footer. This is possibly because, in the examples used, we have nested the
footer inside an article element, and this issue also
arises when the title attribute is also applied to the article
element (refer to findings related to the article element for further information)
First Heading at Level Alt + Ctrl + Insert + 1 through 6
Last Heading at Level Alt + Ctrl + Insert + Shift + 1 through 6
The order in which JAWS announces the heading role and contents is determined by the navigation
method used to reach the heading:
When navigating through content using JAWS keyboard shortcuts (such as the H / Shift + H keys),
JAWS announces the heading contents followed by the heading level
When navigating through content using the Down arrow key,
JAWS announces the heading level followed by the heading contents
Not announced or reachable using the above keystrokes
Arrow key navigation:
element contents
Move to Next Region R
Move to Previous Region Shift + R
Select a Region Insert + Ctrl + R
When the body element represents the sectioning content / rooter
of the header element
(Test HD-001):
Users can navigate to the region using JAWS' region navigation keys, JAWS
announces the header role ("banner"), and JAWS
announces the accessible name and / or accessible description provided for
the header using an appropriate method, such as aria-label,
aria-labelledby, or aria-describedby
Possible bug: JAWS does not announce the role of the header
when navigating into it using the Down arrow key, nor does
it announce the accessible name and / or accessible description provided for
the header using an appropriate method, such as aria-label,
aria-labelledby, or aria-describedby
When the body element is not
the sectioning / root of the header element (all other tests):
Users can not navigate to the region using JAWS' region navigation
keys
JAWS does not announce the header role; it only announces the
header element's contents
JAWS does not announce the accessible name and / or accessible
description provided for the header using an appropriate method,
such as aria-label, aria-labelledby, or
aria-describedby, when navigating into the header
using the Down arrow key
Possible bug: when the title attribute is
applied to the header element, JAWS does not announce the contents of this
attribute when navigating into the header. Instead, it announces
the contents of this attribute immediately after announcing the first word inside
header. This is possibly because, in the examples used, we have nested the
footer inside an article element, and this issue also
arises when the title attribute is applied to the title
attribute (refer to findings related to the article element for
further information)
aria-label contents, separator, min zero, max one hundred
Arrow key navigation:
aria-label contents, separator
Tab key navigation:
aria-label contents, separator, min zero, max one hundred
Move to Next Separator -
Move to Prior Separator Shift + -
If the hr element is missing an accessible name, JAWS will announce
the item as "separator" when navigating through page content using the Arrow
keys, or "dash, dash, dash, separator" when between separators using the
- / Shift + - keys
If the hr element has an explicit accessible name, JAWS will announce
the accessible name, followed by "separator", regardless of the way that the
user navigated to the element
Possible bug: If the hr element includes tabindex="0", JAWS will
erroneously announce "min zero, max 100" alongside the element's role and (where
available) accessible name when the element receives keyboard focus
JAWS does not announce a role for the iframe when navigating into
its contents using either the M / Shift + M or
Down arrow keys
If the title attribute is present on the iframe
element and is set to a non-null value, and no other attributes providing
semantics are included, JAWS will announce the contents of
the title attribute alongside the role and name of the first user
interface element inside the embedded iframe
If the title attribute is not present on the iframe
element, or is present and set to null (title=""), and no other
attributes providing semantics are included, JAWS will only
announce the role and name of the first user interface element inside the embedded
iframe
If an iframe includes role="presentation" or
role="none", JAWS will skip its contents when navigating through the
page using the M / Shift + M keys, but may
announce its contents when navigating through the page using the Down
arrow key, as indicated below
If an iframe does not include a title attribute,
or if the attribute is set to null (title=""), androle="none" is applied to the iframe (but not
aria-roledescription=" "), JAWS will announce the contents of the
title element included in the embedded HTML file (where available) when
navigating into it using the Down arrow key
If an iframe does not include a title attribute,
or if the attribute is set to null (title=""), role="none"
is applied to the iframeandaria-roledescription=" " is included on the iframe,
JAWS will skip the iframe entirely when the user attempts to navigate
into it using the Down arrow key
JAWS consistently announces
the same content when it encounters an img element, whether via
the G / Shift + G keys or via Arrow
key navigation (all tests)
Unless the image is skipped (because, for example, it includes alt=""),
JAWS will always announce the image's role ("graphic") (all tests)
If an img element is missing an alt attribute, JAWS will announce the
image as "unlabelled" (Test IMG-002)
If an image has an alt attribute set to null (alt="") but also includes a non-null
non-null title attribute, JAWS will announce the contents of the title
attribute but will still announce the image as "unlabelled"
(Test IMG-006)
If an img element includes both an alt attribute and an
aria-label attribute, JAWS will announce the contents of the aria-label
attribute, but not the contents of the alt attribute
(Test IMG-003,
Test IMG-004)
If an img element includes both an alt attribute and a
title attribute, JAWS will announce the contents of both attributes together
(Test IMG-005)
If an img element is missing an alt attribute but
it includes a non-null title attribute,
JAWS will announce the contents of this`
attribute in lieu of the missing alt attribute
(Test IMG-007);
note that this behaviour occurs when a non-null aria-label attribute is included
instead of a non-null title attribute
JAWS treats img elements that include alt attributes set to
null (alt="") andalt attributes that contain whitespace
(alt=" ") as decorative images, and (in the absence of any other attributes) will
skip the image entirely
(Test IMG-008,
Test IMG-009)
When the contents of both the alt and title attributes are the
same, JAWS will only announce the contents of one of these attributes
(Test IMG-010)
If an img element is missing an alt attribute
but it includes a title
or aria-label attribute set to null (title="" or aria-label=""),
JAWS will announce the image as "unlabelled"
aria-label attribute contents, title attribute contents, button, title attribute contents
Arrow key navigation:
aria-label attribute contents, title attribute contents, button, title attribute contents
Tab / Shift + Tab key navigation:
aria-label attribute contents, button, title attribute contents, to activate press Enter
List Buttons Ctrl + Insert + B
Next Button B
Previous button Shift + B
JAWS consistently announces the
same content when it encounters an input type=button element, whether
via the B / Shift + B keys or via Arrow key navigation (all tests)
When navigating from input type=button to input type=button
using the B / Shift + B keys, and when
navigating to the button using the Arrow keys,
the contents of the title attribute applied to the input type=button
are announced twice - once before the "button" announcement, and once after (all tests)
Whichever navigation method is used to reach the button, JAWS does
not announce the title attribute contents on the
input type=button if:
The input type=button is wrapped inside a labeland
The label includes content before and after the input type=button
(Test IBTN-009)
Only the label text before and after the button, along with the contents of the
value attribute, are announced
JAWS only announces instructions for activating the input type=button
when the input type=button receives focus via the Tab /
Shift + Tab keys(all tests)
label text, checkbox [not] checked, to check press Spacebar
List Check Boxes Ctrl + Insert + X
Move To Next Check Box X
Move to Prior Check Box Shift + X
JAWS consistently announces the
same content when it encounters an input type=checkbox element, whether
via the X / Shift + X keys or via Arrow key navigation (all tests)
If the checkbox is missing any form of labelling, JAWS "guesses" the label
based on nearby content (Test ICHK-001)
If a checkbox includes the required attribute, JAWS will announce "invalid"
when the checkbox is in an unchecked state, including in its default unchecked state
(if not explicitly set to checked by the author) (Test ICHK-005)
While JAWS announces that the user should press the Spacebar to
check / clear a checkbox, they can also press the Enter key to do this (all tests)
JAWS only announces "Space / Enter, checked" or "Space / Enter, unchecked"
when checking / clearing the checkbox; the label for the checkbox is only announced when the
checkbox initially receives focus (reading or keyboard) (all tests)
JAWS announces the checkbox's role as a "checkbox" but, when the checkbox is in a checked state,
the instructions refer to clearing the "checkmark" (all tests)
label text, title attribute contents, button, title attribute contents
Arrow key navigation:
label text, title attribute contents, button, title attribute contents
Tab / Shift + Tab key navigation:
label text, button, title attribute contents, to activate press Enter
Same commands as for button elements:
List Buttons Ctrl + Insert + B
Next Button B
Previous button B
Note: testing does not cover the actual colour selection
widget, as different browsers use their own native widgets
The input type=color element is announced as a button, but not the specific type of button
(a trigger for the browser's native colour selection widget)
The element is navigable using button navigation keys
If the input type=color is unlabelled / missing an accessible
name, JAWS announces "Colon zero percent, red zero percent, gree zero percent, blue"
(Test CI-001,
Test CI-006)
Possible bug: if the title attribute is applied to the input type=color
element and the element already has an accessible name provided by
the label element, JAWS announces the contents of the title
attribute twice when using the reading keys - once before
announcing the button role, and a second time after announcing the role. Note that
this behaviour does not occur when using the Tab / Shift +
Tab keys to access the element.
(Test CI-007)
Slash slash, date time edit, show date picker, date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:
Date time edit
When the "dd" day portion receives focus:
Day edit spin box, zero, min 1 max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month edit spin box, zero, min 1 max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
Year edit spin box, zero, min 1 max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
aria-label attribute contents, date time edit, slash slash, show date picker
Arrow key navigation:
aria-label attribute contents, slash slash, date time edit, show date picker, date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:aria-label contents, date time edit
When the "dd" day portion receives focus:
Day, aria-label contents, edit spin box, zero, min 1 max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month, aria-label contents, edit spin box, zero, min 1 max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
Year, aria-label contents, edit spin box, zero, min 1 max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
Content referenced by the aria-labelledby attribute, date time edit, slash slash, show date picker
Arrow key navigation:
Content referenced by the aria-labelledby attribute, slash slash, date time edit, show date picker, date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:Content referenced by the aria-labelledby attribute, date time edit
When the "dd" day portion receives focus:
Day, Content referenced by the aria-labelledby attribute, edit spin box, zero, min 1 max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month, Content referenced by the aria-labelledby attribute, edit spin box, zero, min 1 max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
Year, Content referenced by the aria-labelledby attribute, edit spin box, zero, min 1 max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
label element contents, date time edit, slash slash, show date picker
Arrow key navigation:
Slash slash, date time edit, show date picker, date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:label element contents, date time edit
When the "dd" day portion receives focus:
Day, label element contents, edit spin box, zero, min 1 max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month, label element contents, edit spin box, zero, min 1 max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
Year, label element contents, edit spin box, zero, min 1 max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
title attribute contents, date time edit, slash slash
Arrow key navigation:
title attribute contents, slash slash, date time edit,
title attribute contents, show date picker, date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:title attribute contents, date time edit
When the "dd" day portion receives focus:
Day, title attribute contents, edit spin box, zero, min 1 max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month, title attribute contents, edit spin box, zero, min 1 max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
Year, title attribute contents, edit spin box, zero, min 1 max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
Date time edit, slash slash, show date picker, content referenced by the aria-describedby attribute
Arrow key navigation:
Slash slash, date time edit, show date picker, date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:
date time edit, content referenced by the aria-describedby attribute,
content referenced by the aria-describedby attribute
When the "dd" day portion receives focus:
Day, edit spin box, zero, content referenced by the aria-describedby attribute, min 1 max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month, edit spin box, zero, content referenced by the aria-describedby attribute, min 1 max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
Year, edit spin box, zero, content referenced by the aria-describedby attribute, min 1 max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
label element contents,
date time edit,
title attribute contents slash
title attribute contents slash
title attribute contents,
title attribute contents,
min 1 max 31
Arrow key navigation:
title attribute contents, date time edit,
slash, date time edit,
title attribute contents, date time edit,
slash, date time edit,
title attribute contents, date time edit,
title attribute contents, show date picker,
date time edit
Tab / Shift + Tab key navigation:
Navigating into the field:label element contents,
date time edit,
title attribute contents,
title attribute contents
When the "dd" day portion receives focus:
Day, label element contents,
edit spin box, zero, title attribute contents,
min 1, max 31, to set the value use the arrow keys
When the "mm" month portion receives focus:
Month, label element contents,
edit spin box, zero, title attribute contents,
min 1, max 12, to set the value use the arrow keys
When the "yyyy" year portion receives focus:
When the "mm" month portion receives focus:
Month, label element contents,
edit spin box, zero, title attribute contents,
min 1, max 275760, to set the value use the arrow keys
When the trigger control for the date picker receives focus:
Show date picker, button menu, press Space to activate the menu then
navigate with arrow keys
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
Note: testing does not cover the actual date picker
widget, as different browsers use their own native widgets
Possible bug: if the title attribute alone is used to provide an accessible name
for the input type=date element, JAWS does not announce the "show date picker" instruction
(Test DI-005)
Possible bug: when navigating directly to an input type=date
using the E / Shift + E reading keys, JAWS announces the
full accessible name and role for the element. However, when navigating into an
input type=date element using the Arrow keys, JAWS only
announces the accessible name when it is provided through the
application of the aria-label attribute or
title attribute on the input. If
another method is used to label the input, such as wrapping
the input inside a label or the use of the
aria-labelledby attribute to label the input with
referenced content, a JAWS user must explicitly navigate to the related content
using the Arrow key to listen to the accessible name for the field
(assuming they do not switch to using the E / Shift + E reading keys instead)
(Test DI-003,
Test DI-004,
Test DI-007)
Possible bug: when navigating directly to an input type=date
using the E / Shift + E reading keys, JAWS announces any
content referenced via the aria-describedby attribute when the field receives
focus as expected. However, when navigating into an
input type=date element using the Arrow keys, JAWS does not announce
this content as the field's accessible description; a user must explicitly and
separately navigate to the referenced text.
(Test DI-006)
Possible bug: when the aria-describedby attribute
is applied to an unlabelled input type=date element, JAWS announces the
contents referenced from this attribute twice when initially navigating into the field
using the Tab / Shift + Tab keys
(Test DI-006)
Possible bug: even when marked up correctly, JAWS announces the contents
of the title attribute multiple times when using reading keys
or the Tab / Shift + Tab keys to navigate to
an input type=date with a label element and a title
attribute
(Test DI-007)
The accessible name for the field is never announced when the trigger control for the
date picker receives focus using the Tab / Shift +
Tab keys. JAWS only announces the role and name for the specific button
(determined by the user agent), and instructions for operating the date picker. Note
that JAWS does announce an accessible name the trigger control receives
focus using the Shift + Tab keys, but this accessible name
relates to the field as a whole, and not specifically the trigger control.
(All tests)
label text, edit, blank, title attribute contents, type in text
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
JAWS announces the field as an edit field, but does not announce the type
of edit field (a field that requires an email address as an input) (All tests)
Possible bug: JAWS does not announce the text referenced via the
aria-describedby attribute when navigating into an input type=email
using the arrow keys; it only announces the term "edit" (assuming that the field is also missing
an accessible name)
(Test EI-006)
Upload, colon, no file chosen, button, to activate press Enter
List Buttons Ctrl + Insert + B
Next Button B
Previous button B
If the input type=file element is missing an explicit name, JAWS
will announce the visible text for the button ("Choose File"); if an accessible
name is provided, JAWS will announce the accessible name but will not
announce the visible text for the button (All tests)
Although JAWS announces the input type=file element as a button, it will
also announce either
"No file chosen" or the filename of the uploaded file once a file has been uploaded,
thus providing some distinction from other types of button elements (All tests)
If the required attribute is applied to an input type=file
element, JAWS announces both the terms "required" and "invalid entry", regardless of the
navigation method the user uses to access the element
(Test IFILE-003)
The application of the readonly or multiple attributes on
an input type=file element has no effect on how the element is conveyed by
JAWS; the state of these attributes is not announced, regardless of the navigation method
the user users to access the element
(Test IFILE-004,
Test IFILE-006)
JAWS announces input type=image element as a button, and the element
supports general button navigation (all tests)
If the input type=image element is missing an accessible name,
JAWS automatically announces "submit" as the accessible name for the button
(Test IIMG-001)
If the alt attribute on the input type=image element
includes only whitespace, and no other acceptable technique has been used to
provide an accessible name for the element, JAWS will only announce the role of
the element when it receives focus
(Test IIMG-006)
label element contents, edit, spin box,
Contents of the title attribute,
Contents of the title attribute
Arrow key navigation:
Contents of the title attribute, edit, spin box
Tab / Shift + Tab key navigation:
label contents, edit, spin box, Contents of the title attribute, to set the value use the arrow keys or type the value
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
Increase value ↑
Decrease value ↓
JAWS announces the updated value when using the ↑ and
↓ arrow keys to adjust the value in an
input type=number element (all tests)
The button controls inside the input type=number element cannot
be reached with JAWS, either when using the Tab / Shift + Tab
keys or button shortcuts (such as B / Shift + B keys);
however, a user can instead use the arrow keys as described above to change the value instead
(all tests)
Possible bug: if the input type=number element is labelled using the label
element and includes a title attribute, JAWS announces the contents of the title attribute
twice
(Test NI-007)
label element contents, readonly, edit, blank, placeholder, placeholder attribute contents
Arrow key navigation:
Readonly, edit
Tab / Shift + Tab key navigation:
label element contents, readonly, edit, blank, placeholder, placeholder attribute contents, use your reading keys to read the text
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
JAWS announces "star" when inputting characters into input type=password fields (all tests)
Possible bug: JAWS only announces the placeholder attribute's contents
on an input type=password field when the field includes the readonly
attribute; in all other tests, JAWS failed to announce the placeholder attribute's
contents
(Test IPWD-006)
Contents referenced by the aria-labelledby attribute, left, right, slider, current value, min minimum value, max maximum value
Arrow key navigation:
Contents referenced by the aria-labelledby attribute, left, right, slider, current value, min minimum value, max maximum value
Tab / Shift + Tab key navigation:
Contents referenced by the aria-labelledby attribute,
left, right, slider,
current value,
min minimum value,
max maximum value,
to increase or decrease use the arrow keys
Left, right, slider, current value, contents referenced by the aria-describedby attribute, min minimum value, max maximum value
Arrow key navigation:
Left, right, slider, current value, contents referenced by the aria-describedby attribute, min minimum value, max maximum value
Tab / Shift + Tab key navigation:
Left, right, slider,
current value,
contents referenced by the aria-describedby attribute,
min minimum value,
max maximum value,
to increase or decrease use the arrow keys
label element contents,
left, right, slider,
current value,
title attribute contents,
title attribute contents,
min minimum value,
max maximum value
Arrow key navigation:
label element contents,
left, right, slider,
current value,
title attribute contents,
title attribute contents,
min minimum value,
max maximum value
Tab / Shift + Tab key navigation:
label element contents,
left, right, slider,
current value,
title attribute contents,
min minimum value,
max maximum value,
to increase or decrease use the arrow keys
List Form Fields Insert + F5
Move To Next Form Field F
Move to Prior Form Field Shift + F
→ and ↑ increase the value of the slider.
← and ↓ decrease the value of the slider.
Home and End move to the
minimum and maximum values of the slider.
PAGE UP and PAGE DOWN increment or decrement the slider by a given amount.
JAWS does not include a specific keystroke for navigating directly to and between
input type=range elements; however, it is treated as a form field,
so users can use the F / Shift + F keys to perform
the same action (all tests)
JAWS must be in forms mode to allow the user to operate input type=range elements;
when using reading keys, a user should press the Enter key when the element has
reading focus to switch into this mode (all tests)
Once in forms mode, a user can use the Arrow keys to increase / decrease the
slider value; the slider value is announced by JAWS as it changes (all tests)
Possible bug: when using reading keys to navigate to an
input type=range element, JAWS announce the contents of the
title attribute applied to this element multiple times
(Test RI-005,
Test RI-007)
label contents, radio button, [not] checked, required, invalid entry, x of y
Arrow key navigation:
label contents, radio button, [not] checked, required, invalid entry, x of y
Tab / Shift + Tab key navigation:
label contents, radio button, [not] checked, required, invalid entry, x of y
List Radio Buttons Ctrl + Insert + A
Move To Next Radio Button A
Move to Prior Radio Button Shift + A
JAWS announces "x of y" for each radio button where x is the position of the
radio button in the group, and y is the total number of radio buttons in the group
(all tests)
When navigating into a group of radio buttons marked up using the
fieldset and legend elements, JAWS announces the following
before announcing the properties of the first radio button in the group to receive focus
(Test IRDO-004):
The accessible name for the group, provided using the legend element
The word "group" to indicate the user has entered a group (via the fieldset element)
JAWS only announces the above when initially navigating into the group from any direction; once
inside the group, JAWS only announces the properties of each radio button
(Test IRDO-004)
label element contents, edit, blank, title attribute contents
Arrow key navigation:
label element contents, edit, title attribute contents
Tab / Shift + Tab key navigation:
label element contents, edit, blank, title attribute contents, type in text
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
JAWS announces input type=search elements as edit fields, but does
not announce the type of edit field (a field intended for entering a
search term) (all tests)
When navigating to an empty input type=search element using the
E / Shift + E keys or the Tab / Shift +
Tab keys, JAWS will announce that the field is empty ("blank"); however, JAWS will
not announce this term when navigating to the element when using the Arrow keys
(all tests)
If the input type=search element is missing an explicit accessible
name, JAWS "guesses" the label based on nearby content
(Test SI-001,
Test SI-006)
Possible bug: when navigating to an unlabelled input type=search
element that includes an aria-describedby attribute, JAWS announces the contents
referenced by this attribute when the element is reached using the E / Shift +
E keys or the Tab / Shift + Tab keys; however, it
does not announce the referenced text when navigating to the element using the Arrow
keys
(Test SI-006)
The input type=submit element is announced as a submit button by
default when the element does not include the value attribute
(Test ISUBMIT-001).
However, if the value attribute is applied to the element, JAWS conveys
the contents of this attribute in place of the word "submit", and does not otherwise announce
that the element represents a submit button.
(Test ISUBMIT-002,
Test ISUBMIT-003)
label element contents, edit, required, blank, type in text
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
JAWS announces input type=tel elements as edit fields, but does
not announce the type of edit field (a field intended for entering a phone
number) (all tests)
When navigating to an empty input type=tel element using the
E / Shift + E keys or the
Tab / Shift + Tab keys, JAWS will announce
that the field is empty ("blank"); however, JAWS will not announce this term when
navigating to the element when using the Arrow keys (all tests)
If the input type=tel element is missing an explicit accessible
name, JAWS "guesses" the label based on nearby content
(Test TL-001,
Test TL-006)
Possible bug: when navigating to an unlabelled
input type=tel element that includes an
aria-describedby attribute, JAWS announces the contents referenced by
this attribute when the element is reached using the E /
Shift + E keys or the Tab /
Shift + Tab keys; however, it does not announce
the referenced text when navigating to the element using the
Arrow keys
(TL-006)
label attribute contents, edit, blank, type in text
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
When navigating to an empty input type=text element using the
E / Shift + E keys or the
Tab / Shift + Tab keys, JAWS will announce that the
field is empty ("blank"); however, JAWS will not announce this term when
navigating to the element when using the Arrow keys (all tests)
If an input type=text element is missing an explicit
accessible name, JAWS "guesses" the label based on nearby content
(Test ITEXT-001,
Test ITEXT-002)
Possible bug: if an input type=text element
includes both the readonly attribute and the placeholder attribute,
JAWS announces the presence and contents of the placeholder attribute when navigating
to the field using the E / Shift + E keys or the
Tab / Shift + Tab keys, but will not announce the presence or
contents of the placeholder attribute when navigating to the field using the
Arrow keys
(Test ITEXT-007)
JAWS does not explicitly announce information associated with the
size, aria-autocomplete=list,
aria-autocomplete=inline, aria-autocomplete=both,
aria-autocomplete=none, or
aria-autocomplete=off attributes when these attributes are
applied to the input type=text element and when the element
receives focus
(Test ITEXT-013,
Test ITEXT-014,
Test ITEXT-015,
Test ITEXT-016,
Test ITEXT-017,
Test ITEXT-018)
Hours field: Hours, edit, spinbox, hours, colon, current value, min zero, max 23
Minutes field: Minutes, edit, spinbox, minutes, colon, current value, min zero, max 59
Show time picker button: N/A - not reachable using these keystrokes
Arrow key navigation (in reading mode, not editing mode):
Hours field: Hours, [user presses the Down arrow key], hours, colon, current value, edit, spinbox, button
Minutes field: Minutes, [user presses the Down arrow key], minutes, colon, current value, edit, spinbox
Show time picker button: Show time picker, value of the aria-label attribute, show time picker, button, menu
Tab / Shift + Tab key navigation:
Hours field:: Hours, value of the aria-label attribute, edit, spinbox, current value, min zero, max 23, to set the value use the arrow keys
Minutes field:: Minutes, value of the aria-label attribute, edit, spinbox, current value, min zero, max 59, to set the value use the arrow keys
Show time picker button:: Show time picker, value of the aria-label attribute, button, menu, press space to activate the menu then navigate with arrow keys
Hours field: Hours, edit, spinbox, hours, colon, current value, min zero, max 23
Minutes field: Minutes, edit, spinbox, minutes, colon, current value, min zero, max 59
Show time picker button: N/A - not reachable using these keystrokes
Arrow key navigation (in reading mode, not editing mode):
Hours field: Hours, colon, current value, edit, spinbox, button
Minutes field: Minutes, colon, current value, edit, spinbox
Show time picker button: Show time picker, contents referenced by the aria-labelledby attribute, show time picker, button, menu
Tab / Shift + Tab key navigation:
Hours field:: Hours, contents referenced by the aria-labelledby attribute, edit, spinbox, current value, min zero, max 23, to set the value use the arrow keys
Minutes field:: Minutes, contents referenced by the aria-labelledby attribute, edit, spinbox, current value, min zero, max 59, to set the value use the arrow keys
Show time picker button:: Show time picker, contents referenced by the aria-labelledby attribute, button, menu, press space to activate the menu then navigate with arrow keys
Hours field: Hours, edit, spinbox, hours, colon, current value, min zero, max 23
Minutes field: Minutes, edit, spinbox, minutes, colon, current value, min zero, max 59
Show time picker button: N/A - not reachable using these keystrokes
Arrow key navigation (in reading mode, not editing mode):
Hours field: Hours, colon, current value, edit, spinbox, [user presses the Down arrow key], colon
Minutes field: Minutes, colon, current value, edit, spinbox
Show time picker button: Show time picker, label content that wraps the element, show time picker, button, menu
Tab / Shift + Tab key navigation:
Hours field:: Hours, label content that wraps the element, edit, spinbox, current value, min zero, max 23, to set the value use the arrow keys
Minutes field:: Minutes, label content that wraps the element, edit, spinbox, current value, min zero, max 59, to set the value use the arrow keys
Show time picker button:: Show time picker, label content that wraps the element, button, menu, press space to activate the menu then navigate with arrow keys
Hours field: Hours, edit, spinbox, hours, colon, current value, content referenced by the aria-describedby attribute, min zero, max 23
Minutes field: Minutes, edit, spinbox, minutes, colon, current value, content referenced by the aria-describedby attribute, min zero, max 59
Show time picker button: N/A - not reachable using these keystrokes
Arrow key navigation (in reading mode, not editing mode):
Hours field: Hours, [user presses the Down arrow], hours, colon, current value, edit, spinbox, colon
Minutes field: Minutes, [user presses the Down arrow], minutes, colon, current value, edit, spinbox
Show time picker button: Show time picker, button, menu
Tab / Shift + Tab key navigation:
Hours field:: Hours, edit, spinbox, current value, content referenced by the aria-describedby attribute, min zero, max 23, to set the value use the arrow keys
Minutes field:: Minutes, edit, spinbox, current value, content referenced by the aria-describedby attribute, min zero, max 59, to set the value use the arrow keys
Show time picker button:: Show time picker, button, menu, content referenced by the aria-describedby attribute, press space to activate the menu then navigate with arrow keys
Hours field: Hours, edit, spinbox, hours, colon, current value, title attribute content, title attribute content, min zero, max 23
Minutes field: Minutes, edit, spinbox, minutes, colon, current value, title attribute content, title attribute content, min zero, max 59
Show time picker button: N/A - not reachable using these keystrokes
Arrow key navigation (in reading mode, not editing mode):
Hours field: Hours, colon, current value, value of the title attribute, edit, spinbox, colon
Minutes field: Minutes, colon, current value, value of the title attribute, edit, spinbox, value of the title attribute
Show time picker button: Show time picker, label contents, value of the title attribute, button, menu
Tab / Shift + Tab key navigation:
Hours field:: Hours, label contents, edit, spinbox, current value, value of the title attribute, min zero, max 23, to set the value use the arrow keys
Minutes field:: Minutes, label contents, edit, spinbox, current value, value of the title attribute, min zero, max 59, to set the value use the arrow keys
Show time picker button:: Show time picker, label contents, button, menu, value of the title attribute, press space to activate the menu then navigate with arrow keys
List Edit Boxes Ctrl + Insert + E
Move To Next Edit Box E
Move to Prior Edit Box Shift + E
General:
The component generated by Chrome when it encounters an input type=time
element is made up of separate hours and minutes fields, followed by a menu button labelled
show time picker
Expanding the show time picker menu button generates two parallel comboboxes,
the first of which relates to hours and the second of which relates to minutes; a user can
navigate between these comboboxes using the Left and Right arrow
keys
Notable JAWS behaviour:
When navigating to and between fields within the time
component generated by Chrome using the E / Shift + E keys,
JAWS will announce each field the same way, without reference to primary or secondary labels
attached to the input, except when:
The aria-describedby attribute is applied to the
input type="time" element
(Test TI-006) or
The title attribute is applied to the
input type="time" element
(Test TI-007)
When navigating to and between fields within the time component generated by
Chrome using the Arrow keys, and when in reading mode rather than edit
mode, JAWS' announcements for each element of the component differ depending on how the
overall input type=time element is labelled; specifically:
If the input type=time element is missing any form of labelling, JAWS will only announce the current value of each hours and minutes field, and the role of each
element (spinbox for the hours and minutes fields, menu button for the show time picker button)
(Test TI-001)
If the aria-label attribute is applied to the
input type=time element, JAWS will only announce the value of this
attribute when the Show Time Picker button receives Arrow key focus,
and the term "show time picker" will be announced twice
(once before the value of the aria-label attribute is announced, and again
after the value of the aria-label attribute is announced)
(Test TI-002)
If the aria-labelledby attribute is applied to the
input type=time element, JAWS will only announce the content
referenced by this attribute when the Show Time Picker button receives Arrow key focus,
and the term "show time picker" will be announced twice
(once before the referenced content is announced, and again
after the referenced content is announced)
(Test TI-003)
If the input type=time element is wrapped inside a
label element, JAWS will only announce the label
contents when the Show Time Picker button receives Arrow key focus,
and the term "show time picker" will be announced twice
(once before the label contents are announced, and again
after the label contents are announced)
(Test TI-004)
If the title attribute is applied to the
input type=time element, JAWS will announce the contents of this
attribute when the Minutes field receives Arrow key focus, and will
also announce the contents of this attribute when the "Show Time Picker" button
receives Arrow key focus; in terms of the latter, JAWS will announce
the term "show time picker" both before and after the value
of the title attribute is announced
(Test TI-005)
JAWS does not announce the content referenced by the aria-describedby
attribute at any point when navigating through the fields or buttons that Chrome
generates based on the input type=time element using the Arrow
keys
(Test TI-006)
If the title attribute is applied to the input type=time
element, and the element is labelled using the label
element using a for and id relationship:
JAWS will announce the value of the title attribute when each
of the hours and minutes fields, and the Show Time Picker button receive focus
using the Arrow keys
JAWS will only announce the value of the label element
when the Show Time Picker button receives Arrow key focus
When navigating to and between fields within the time component generated by
Chrome using the Tab / Shift + Tab keys:
JAWS will announce the element as a group when initially navigating into the
element using the above keys unless the element is missing an
accessible name or is missing an accessible description
JAWS announces an input type=url field as an edit field,
but does not announce the type of edit field (a field that
requires a URL as an input) (all tests)
If an input type=url field is missing any form of labelling, JAWS "guesses" the label
based on nearby content
(Test UI-001)
When navigating to an empty input type=url element using the
E / Shift + E keys or the
Tab / Shift + Tab keys, JAWS will announce that
the field is empty ("blank"); however, JAWS will not announce this term when navigating
to the element using the Arrow keys (all tests)
Possible bug: when an input type=url element
is labelled using only the title attribute, JAWS announces the
contents of this attribute twice when navigating into the field using the
Arrow keys
(Test UI-005)
Possible bug: when navigating to an unlabelled
input type=url element that includes an
aria-describedby attribute, JAWS announces the contents referenced
by this attribute when the element is reached using the
E / Shift + E keys or the
Tab / Shift + Tab keys; however, it does not
announce the referenced text when navigating to the element using the
Arrow keys
(Test UI-006)
Possible bug: when navigating into an
input type=url element that includes an explicit label and a
readonly attribute or a disabled attribute,
JAWS does not announce the contents of the
label element when navigating into the field using the
Arrow keys
(Test UI-009,
Test UI-010)
value content, "progress bar"
(if using arrow keys)
No special commands
Progress bars are not inherently focusable. But if a
progress bar has a tabindex="0", then the
accessible name of the progress bar will be announced on
focus.
Progress bars can be navigated to via P quick key. The accessible name of the progress will
be
announced when focused in this manner.