JavaScript Element ariaRelevant Property

Beginner
⏱️ 11 min read
📚 Updated: Jul 2026
🎯 5 Examples
🚀 5 Try-it labs
Non-standard
Instance property

What You’ll Learn

Element.ariaRelevant is an instance property that reflects the aria-relevant attribute. Learn which live-region changes get announced (additions, removals, text, all), how it pairs with aria-live, and how to get or set the property from JavaScript—with five examples and try-it labs.

01

Kind

Instance property

02

Type

String

03

Values

additions · removals · text · all

04

Reflects

aria-relevant

05

Status

Non-standard

06

Pair with

aria-live

Introduction

A live region tells assistive technologies that content may update. Not every update is equally useful—sometimes you care about new nodes, sometimes only text changes, sometimes removals too.

aria-relevant filters which kinds of changes should be announced. ariaRelevant is the JavaScript reflection of that attribute.

JavaScript
const el = document.getElementById("clock");
console.log(el.ariaRelevant); // "all"
el.ariaRelevant = "text";
💡
Beginner tip

Start with ariaLive (polite / assertive). Use ariaRelevant when you need finer control over which DOM changes inside that region are announced. Keep announcements short and test with a screen reader.

Understanding the Property

MDN: the ariaRelevant property of the Element interface reflects the value of the aria-relevant attribute, which indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified. It describes which changes in an aria-live region are relevant and should be announced.

  • Reflected attribute — mirrors aria-relevant.
  • Get / set — readable and writable string (space-separated tokens).
  • Live-region filter — works with aria-live regions.
  • Non-standard IDL — MDN marks the property Non-standard (Baseline widely available).

📝 Syntax

JavaScript
ariaRelevant

Value

A string containing one or more of the following values, space separated:

ValueMeaning (MDN)
"additions"Additions of element nodes within the live region are relevant.
"removals"Deletion of nodes from the live region is relevant.
"text"Changes to the textual content of existing nodes are relevant.
"all"Equivalent to "additions removals text".
⚠️
Combine tokens

You can write space-separated values such as el.ariaRelevant = "additions text". Use "all" when every change type should be relevant.

📋 MDN Example Shape

MDN starts with a timer live region marked aria-relevant="all", then narrows it to "text":

JavaScript
<div
  id="clock"
  role="timer"
  aria-live="polite"
  aria-atomic="true"
  aria-relevant="all"
></div>
JavaScript
let el = document.getElementById("clock");
console.log(el.ariaRelevant); // all
el.ariaRelevant = "text";
console.log(el.ariaRelevant); // text

Pair with ariaLive and often ariaAtomic so urgency and announcement scope match your UI updates.

⚡ Quick Reference

GoalCode / note
Readel.ariaRelevant
Text changes onlyel.ariaRelevant = "text"
Everythingel.ariaRelevant = "all"
Combineel.ariaRelevant = "additions text"
RequiresAn aria-live region (or equivalent live role)
MDN statusNon-standard · Baseline Widely available

🔍 At a Glance

Four facts about Element.ariaRelevant.

Kind
get / set

Instance

Type
string

Token list

Reflects
aria-relevant

Attribute

Status
non-std

MDN note

Examples Gallery

Examples follow MDN Element: ariaRelevant. Labs use a live region so you can safely read and write the property.

📚 Getting Started

Read the reflected value and follow MDN’s update.

Example 1 — Read ariaRelevant

Log which change types a live region considers relevant.

JavaScript
const el = document.getElementById("clock");
console.log(el.ariaRelevant);

// HTML includes: aria-live="polite" aria-relevant="all"
Try It Yourself

How It Works

The property returns the attribute string. If the attribute is missing, many browsers return null.

Example 2 — MDN Update to "text"

MDN: narrow relevance from all changes to text changes only.

JavaScript
let el = document.getElementById("clock");
console.log(el.ariaRelevant); // all
el.ariaRelevant = "text";
console.log(el.ariaRelevant); // text
Try It Yourself

How It Works

Assigning the property updates the reflected aria-relevant attribute so assistive technologies know which change types matter.

📈 Additions Token, Attribute Sync & Snapshot

Practice setting tokens and verify reflection.

Example 3 — Set "additions text"

Create a live region and announce new nodes plus text updates.

JavaScript
const region = document.createElement("div");
region.setAttribute("role", "status");
region.setAttribute("aria-live", "polite");
region.setAttribute("aria-label", "Updates");
document.body.appendChild(region);

region.ariaRelevant = "additions text";
console.log({
  ariaRelevant: region.ariaRelevant,
  attr: region.getAttribute("aria-relevant")
});
Try It Yourself

How It Works

Space-separated tokens are valid. Skip removals when deleting nodes should stay silent.

Example 4 — Property vs getAttribute

Confirm the attribute stays in sync after a write.

JavaScript
const el = document.createElement("div");
el.setAttribute("role", "timer");
el.setAttribute("aria-live", "polite");
el.setAttribute("aria-relevant", "all");
document.body.appendChild(el);

el.ariaRelevant = "text";
console.log({
  fromProperty: el.ariaRelevant,
  fromAttribute: el.getAttribute("aria-relevant"),
  same: el.ariaRelevant === el.getAttribute("aria-relevant")
});
Try It Yourself

How It Works

Prefer ariaRelevant in script; keep the attribute for HTML markup.

Example 5 — Support Snapshot

Feature-detect and remember the Non-standard status.

JavaScript
console.log({
  supported: "ariaRelevant" in Element.prototype,
  allowed: ["additions", "removals", "text", "all"],
  pairWith: "ariaLive / aria-live",
  tip: "MDN: Non-standard IDL — test with a screen reader",
  status: "Non-standard · Baseline Widely available (MDN)"
});
Try It Yourself

How It Works

Feature-detect before relying on the IDL property. The reflected attribute aria-relevant is still the markup path for live regions.

🚀 Common Use Cases

  • Clocks or timers that update text and should announce text changes only.
  • Feeds that announce new items (additions) but stay quiet on removals.
  • Status panels that announce every change type with all.
  • Chat or log UIs that care about new nodes and text updates together.
  • Keeping script and markup aligned without manual setAttribute.

🔧 How It Works

1

Mark a live region

Use aria-live (or a live role such as status / timer).

Region
2

Set ariaRelevant tokens

Choose additions, removals, text, all, or a combination.

Filter
3

DOM updates inside the region

Add nodes, remove nodes, or change text content.

Change
4

Relevant changes are announced

Assistive tech notifies users for matching change types.

📝 Notes

  • MDN: Non-standard IDL property (also Baseline Widely available since Oct 2023).
  • Not labeled Deprecated or Experimental on the MDN page.
  • Needs a live region (aria-live or equivalent) to be meaningful.
  • Related: ariaReadOnly, ariaLive, ariaRequired, JavaScript hub.

Browser Support

Element.ariaRelevant is marked Non-standard on MDN and also listed as Baseline Widely available (since October 2023). Logos use the shared browser-image-sprite.png sprite from this project. Feature-detect and test with assistive technology.

Non-standard · Baseline

Element.ariaRelevant

Space-separated string — reflects aria-relevant for live region change types.

Baseline Widely · Non-std
Google Chrome Supported (ARIA reflection)
Yes
Microsoft Edge Supported (ARIA reflection)
Yes
Mozilla Firefox Supported (ARIA reflection)
Yes
Apple Safari Supported (ARIA reflection)
Yes
Opera Follow Chromium support
Yes
Internet Explorer No ariaRelevant IDL — use setAttribute
No
ariaRelevant Baseline

Bottom line: Use ariaRelevant carefully: MDN marks the IDL Non-standard. Pair with aria-live, keep announcements useful, and verify behavior with a screen reader.

Conclusion

ariaRelevant reflects aria-relevant so live regions can declare which change types matter—additions, removals, text, or all. Remember MDN marks the IDL property Non-standard: learn it, feature-detect when needed, and always validate announcements with assistive technology.

Continue with ariaRequired, ariaLive, ariaAtomic, or the JavaScript hub.

💡 Best Practices

✅ Do

  • Pair with a clear aria-live value
  • Pick the narrowest relevant tokens you need
  • Keep live-region text short and meaningful
  • Feature-detect the IDL property when relying on it
  • Test announcements with a screen reader

❌ Don’t

  • Ignore MDN’s Non-standard warning in production planning
  • Announce every removal if it creates noise
  • Expect ariaRelevant alone to create a live region
  • Spam assertive updates for minor text ticks
  • Skip real AT testing after changing tokens

Key Takeaways

Knowledge Unlocked

Five things to remember about ariaRelevant

Non-standard reflected filter for live-region change types.

5
Core concepts
📝 02

Token list

additions text all…

Values
🔍 03

Needs live

aria-live region

Pair
04

Non-standard

MDN IDL note

Status
🎯 05

Test AT

screen reader

Rule

❓ Frequently Asked Questions

It reflects the aria-relevant attribute as a string, indicating which changes inside an aria-live region should trigger assistive technology notifications (additions, removals, text, or all).
MDN marks Element.ariaRelevant as Non-standard. It is also listed as Baseline Widely available (since October 2023). It is not labeled Deprecated or Experimental on that MDN page.
A space-separated string of one or more tokens: "additions", "removals", "text", or "all" (equivalent to "additions removals text").
ariaLive turns on a live region and sets urgency (polite / assertive / off). ariaRelevant filters which kinds of DOM changes inside that region are announced.
Use carefully. MDN marks the Element.ariaRelevant IDL property Non-standard and does not recommend non-standard features in production. Prefer well-supported live-region patterns and test with real screen readers.
MDN reads aria-relevant="all" from a timer live region via ariaRelevant, then assigns "text" so only text changes are considered relevant.
Did you know?

"all" is just a shortcut for "additions removals text". If removals create noisy announcements, prefer a narrower list such as "additions text" instead of "all".

Next: ariaRequired

Learn the reflected aria-required property for required form input.

ariaRequired →

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

5 people found this page helpful