Comments (3)
Sorry to resurrect a nearly 4 year old thread, I was recently starting to implement this like in the example and I stumbled across the official spec for aria compatible keyboard navigation here https://www.w3.org/TR/wai-aria-practices/examples/dialog-modal/datepicker-dialog.html.
In implementing this I have a (soon to be) 300 line onKeyDown handler function + extras, as there's a standard now would you be interested in adding this to the main library now?
I've actually struggled with a couple of things that probably would be easier if it was inside of useDayzed code rather than integrating using the exposed functions, specifically the "next/prev month" interactions;
- pageDown; same day-ish in next month (or same month next year + shift)
- pageUp; same day-ish in previous month (or same month next year + shift)
- going to prev day which is in last month
- going to next day which is in next month
- going to start of week that is in the previous month
- going to end of week that is in the next month
One other thing I'm having problems with that would be easier with more access to dayzed internals is that all dates should be tabindex="-1"
except the currently selected date or today. (I think for this ranges/multiple selections would all be focusable with correct aria labels)
from dayzed.
Looks like you have addressed this in the examples in PR #4, and I went ahead and merged it. Great work!
Would we want to add this functionality as a part of the dazyed library? Or do we just want to suggest that users implement this in some fashion on their side? I think I would prefer the second option, as the example shows a great way to add it, but leaves it up to the users to implement it in a way that will work best for their situation - Example: maybe down arrow jumps 2 weeks ahead instead of one?
from dayzed.
I think the arrow key implementation will be determined by the user of the package. Showing them how to implement it should be enough.
from dayzed.
Related Issues (20)
- Proposal: Turn components in examples into reusable components HOT 3
- Rename fillAdjacentMonths to showOutsideDays HOT 4
- Provide option to go forward/backward a variable number of months HOT 3
- Move date-fns to dependencies HOT 6
- Compatibility with React 15? HOT 1
- Upgrade to use date-fns Version 2 HOT 3
- Pass the event to the onDateSelected callback HOT 5
- Unable to use useDayzed with typescript HOT 5
- A possible bug in @types HOT 2
- Fix unnecessary recalculations HOT 2
- Proper way to show dayzed-powered calendar alongside native date input? HOT 1
- How to change timezone? HOT 2
- Translate aria-labels HOT 3
- Would you be interested in a TypeScript version HOT 2
- [que[ - How to change date from outside of the calendar HOT 2
- Is there any possibility to include time selection along with date? HOT 2
- Changing offset with state HOT 2
- Incorrect handling of years 0000-0099 HOT 2
- Weekly view
- Internationalization of accessibility properties from getDateProps HOT 3
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 dayzed.