Opened 5 years ago

Last modified 5 years ago

#9620 open bug

Dialog: JAWS reads content of dialog on every form element in IE9 & IE10

Reported by: norabora Owned by:
Priority: minor Milestone: none
Component: ui.dialog Version: 1.10.3
Keywords: a11y Cc:
Blocked by: Blocking:

Description

Using JAWS 14 or 15, when you open a dialog and tab to form elements, JAWS reads all the elements on the page instead of just the element with focus. This is because the top-level div (.ui-dialog) has the aria-describedby attribute with the id of the rest of the dialog (#ui-id-1). When that attribute is removed, JAWS reads the correct labels for the elements in the dialog. You can easily reproduce this using the example dialog on http://jqueryui.com/dialog/#modal-form.

This was tested in IE9, IE10 and FF24. The bug was only seen in IE9 and IE10.

Change History (2)

comment:1 Changed 5 years ago by tj.vantoll

Keywords: a11y added
Status: newopen
Summary: JAWS reads content of dialog on every form element in IE9 & IE10Dialog: JAWS reads content of dialog on every form element in IE9 & IE10

I verified this behavior.

comment:2 Changed 5 years ago by Jörn Zaefferer

When we worked on the ARIA implementation we had to make a decision on how to deal with 'bad' markup. We never bothered to update our own demos, which is certainly an issue. Two examples of 'good' dialog markup can be found here: http://view.jqueryui.com/master/tests/visual/dialog/form.html

The source of the aria-describedby setting might also help to explain the current behaviour: https://github.com/jquery/jquery-ui/blob/9fd0e86820dcea532d5357e0b814653746d62889/ui/jquery.ui.dialog.js#L348-355

Would be great to get some feedback on that visual test and the implementation. There are reasons for the current behaviour and the implementation is the best we could come up with at the time. I'm very much interested in suggestions to improve it, though.

Note: See TracTickets for help on using tickets.