Использовал бы aria-controls
на кнопке для ссылки на элемент диалогового окна пользовательского интерфейса jQuery. что открывает уместное использование ARIA?
Я уже заметил, что пользовательский интерфейс jQuery автоматически помещает div
в другой отдельный div
, который имеет role=dialog
и aria-labelledby
с заголовком диалогового окна. Я видел aria-controls
отношения между ссылками на вкладки и панелями вкладок, а также кнопками и элементами форм (вводы, раскрывающиеся списки и т. Д.), Но не между кнопками и диалоговыми окнами.
Вот пример кода, демонстрирующий, о чем я спрашиваю:
$('button[aria-controls$="-dialog"]').on('click', function() {
var $dialog = $('#' + $(this).attr('aria-controls'));
$dialog.dialog('open');
});
$('.jqui-dialog').dialog({
modal: true,
autoOpen: false
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src=https://code.jquery.com/ui/1.11.4/jquery-ui.min.js></script>
<link rel=stylesheet type=text/css href=https://code.jquery.com/ui/1.11.4/themes/dot-luv/jquery-ui.css>
<button type=button aria-controls=add-new-item-dialog>
Add new item
</button>
<div id=add-new-item-dialog class=jqui-dialog title='Add new item'>
<p>A form here.</p>
</div>