← All analysers · Multi-model analysers

MissingAriaConnectionAnalyzer

Validates aria-labelledby, aria-describedby, and aria-controls targets exist.

What it detects

An `aria-labelledby="foo"` is harmful if no element with `id="foo"` exists — the assistive technology gets nothing where it expected a name. Cross-references ARIA reference attributes against actual element ids in the DOMModel.

WCAG criteria

  • 1.3.1Info and Relationships
  • 4.1.2Name, Role, Value

Example

<input aria-labelledby="lbl-name" />
<!-- no element with id="lbl-name" anywhere on the page -->

Paradise reports: Element references `aria-labelledby="lbl-name"` but no element with that id exists.

Source

analyzers/MissingAriaConnectionAnalyzer.ts

More