Comments (6)
Version 1.6.0 is now equipped with a load of accessibility attributes.
- aria-label="Slideshow" on slideshow container
- aria-live="polite" on slides container
- aria-hidden true/false on each slide
- aria-label previous/next on arrows
- role="tablist" aria-label="Slideshow navigation" on bullets container
Caution:
From version 1.6.0 the styles must be imported from an external file. Refer to the installation part in the documentation.
from vueper-slides.
Yes, it will be in the next release coming soon.
I will add aria-label on arrows, role="tablist" on bullets wrapper and role="presentation" on each bullet.
Is it what you suggested?
from vueper-slides.
The same is happening me, until the first click is done in some arrow or bullet, or you drag to the any side image with mouse, keyboard arrows won't work. In the project codepen the issue is also present to me.
Click on the image didn't work also, thanks in advance.
from vueper-slides.
Hi @guirisan, This is the normal behavior.
You need to first have the focus on a button of the slideshow to be able to navigate with arrows.
This is can also be done with the tab key - as a normal accessible app.
If you want to be able to navigate through the slideshow with arrows from the beginning you can set the focus on one of the slideshow button from the ready
event. But this is not something that should be done from the vueper-slides
library as this is your decision to put the slideshow on focus on page load.
But I don't recommend doing so neither - imo, for accessibility, the focus should stay at the first focusable element of the page. Then the user can tab to wherever they want.
Hope it clarifies a bit.
from vueper-slides.
from vueper-slides.
Thanks @guirisan for the feedback and yes then it makes sense.
So from the ready event, trigger the focus on the first slide bullet:
<vueper-slides @ready="focusFirstBullet()">
<vueper-slide v-for="i in 5" :key="i" :title="i.toString()"></vueper-slide>
</vueper-slides>
// In your component methods.
focusFirstBullet () {
// Give it time to be in the DOM.
setTimeout(() => {
document.querySelector('.vueperslides__bullets button:first-child').focus()
}, 200)
}
Here is a demo: https://codepen.io/antoniandre/full/mddaWze, and editable here: https://codepen.io/antoniandre/pen/mddaWze.
from vueper-slides.
Related Issues (20)
- Drag not working on Chrome/Brave & Chrome IOS HOT 6
- Vueperslides in Astro Build issue HOT 1
- Slide show does not show all images when using require() keyword HOT 1
- Autoplay not working HOT 1
- Click and slide - unexpected behavior
- Using vue3 for Multiple slide when on last slide it does not slide if click Prev
- error <template #content > typescript - error TS2339: Property 'content' does not exist on type '{}'. HOT 1
- Idea for auto height HOT 1
- Feature Request: vertical thumbnails
- Cannot drag if initialized with no slide
- How to display multiple items but move the items one by one with each next click? HOT 2
- On-Key
- On-Key is not working on load HOT 1
- Question about 'lazy' and 'lazy-load-on-drag'
- render issues with template #content and multiple images HOT 1
- more then 3 or 4 visible slides. active slide issue when move one by one slide
- Events not emitting properly on 3.5.1 HOT 1
- ASYNCHRONOUS COMPONENT USE ERROR
- href="false" in vueperslide is causing nuxt Prerendering crawler to fail.
- how the bullets dynamically update as the user navigates through the slides.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vueper-slides.