Author-managed arrow key navigation within widgets

  • Capture key strokes at the widget managing focus

  • Move focus to the child using tabindex:
    • Set the tabindex="-1”" on the child element to allow it to be focusable
    • Childelement.focus();
    • Draw visible focus to the child with focus using styling
    • Browser will fire a focus change event to the AT

  • Managing parent indicate which child has focus using active descendant
    • Set aaa:activedescendant="active childID" on the parent (like listbox or menu)
    • Draw visible focus to the child with focus using styling
    • Browser fires focus event on behalf of the child