Skip to content

[carousel] ARIA attributes and keyboard control #380

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 32 commits into from
May 11, 2017
Merged

[carousel] ARIA attributes and keyboard control #380

merged 32 commits into from
May 11, 2017

Conversation

tmorehouse
Copy link
Member

@tmorehouse tmorehouse commented May 11, 2017

Carousel:
Added aria- attributes and roles for accessibility. Non-active slides will have aria-hidden="true"

Added keyboard navigation to carousel-indicators (by focusing the indicator). Added role button to indicators, and added enter and space key handlers.

When indicators are not focused, pressing left or right keys will go to previous or next slide

When carousel controls/indicators are focused, sliding is paused. When focus leaves carousel, sliding will resume

When in pause mode, the active slide will be focused to allow screen readers to read the slide content (if any)

Added props for labeling the buttons/regions (sr-only text and aria-label text)

Some aria attributes will not aper is an ID is not assigned to the carousel or carousel-slides. It is recommended that each slide have a unique ID, and that the carousel have a unique ID.

Addresses some of #333

button-toolbar (bonus)
Tweaked the focus timing a bit

tmorehouse added 30 commits May 8, 2017 05:31
[modal] focusFirst timing tweak (#357)
Additional ARIA on navs and dropdown (#358)
Better handling of modifiers
A few code optimizations
Removed excess usage comments
When links have role="button", screen readers expect them to work like buttons, so they need to have handlers for enter and spake keys (along with the regular click handler)
@pi0 pi0 merged commit 1ca0706 into bootstrap-vue:master May 11, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants