🔗ally.is.focusable
Determines if an element is considered focusable.
🔗Description
An element is considered focusable if it is ally.is.focusRelevant, ally.is.visible and not ally.is.disabled.
Consult the data tables what browsers consider focusable and what ally.js considers focusable to learn how HTML elements behave.
🔗Usage
var element = document.getElementById('victim');
var isFocusable = ally.is.focusable(element);
🔗Arguments
| Name | Type | Default | Description |
|---|---|---|---|
| element | HTMLElement | required | The Element to test. |
The underlying rules can also be accessed in the options argument style by calling ally.is.focusable.rules(options):
| Name | Type | Default | Description |
|---|---|---|---|
| context | <selector> | required | The element to examine. The first element of a collection is used. |
| except | <focus identification exception> | {} | The Element to test. |
🔗Returns
Boolean, true if the element is focusable.
🔗Throws
TypeError if element argument is not of type HTMLElement.
🔗Changes
- Since
v#masterall<area>elements are considered focus-relevant, but only valid<area>elements are considered focusable. - Since
v#masterexceptions can be passed toally.is.focusable.rules(options).
🔗Notes
🔗Related resources
ally.is.focusRelevantis used to identify elements that can receive focusally.is.focusableidentifies elements that are focusableally.query.focusablefinds focusable elements in the DOMally.is.validAreais used to identify if<area>elements satisfy the requirements to be considered focusable