GithubHelp home page GithubHelp logo

Comments (5)

 avatar commented on May 22, 2024

Things you need to consider for accessibility (hint, it's not only aria roles)

  • Being able to tab into the component. And respecting the tabindex property.
  • Clicking on a label that has the for property set to the id property of the component, should activate the component. (The for, id combo also links the label to the component for the screenreader)
  • Support aria-labeledby, aria-describedby and required.
  • Needs to respect being disabled when a <fieldset> is set to disabled.

from ember-power-select.

jmacqueen avatar jmacqueen commented on May 22, 2024

Apologies if I am weighing in with things you already know...

This is a favorite reference for me when doing a11y-friendly work. I cannot recommend it highly enough. It nicely digests the relevant portions of the WCAG suggestions for accessibility AND it's broken down by component type with links to some vanilla JS implementations

https://www.w3.org/TR/wai-aria-practices-1.1/#combobox

The examples aren't a perfect matchup for what you have here, but the Dojo combobox with autocomplete does a really good job and isn't far off. role="combobox" is on the containing <div> and the use of aria-owns and aria-expanded are things I don't see referenced in this issue.

The other advantage of attributes like aria-disabled and aria-selected (as referenced in the Listbox section) is that you can select on them directly in your CSS instead of creating special classes for those states.

from ember-power-select.

cibernox avatar cibernox commented on May 22, 2024

@jmacqueen Thanks for the reference. @martndemus did already some work on it, but this is helpful.

from ember-power-select.

knownasilya avatar knownasilya commented on May 22, 2024

Would love required support..

from ember-power-select.

 avatar commented on May 22, 2024

@knownasilya @jmacqueen I have to get back to the WIP pull request, I hope to get back to it this weekend. See #254

from ember-power-select.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.