Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

README.md

On Demand Live Regions

A tiny module for making screen readers announce text on demand, without a visual change to the interface. Initializing and using the live region is as simple as:

const liveRegion = new OnDemandLiveRegion()

liveRegion.say('Hello World!')

Installation

Just grab the minified version or install from NPM:

npm i on-demand-live-region

Settings object

  • level — the live region level (default: polite)
  • parent — the element to which the live region will be appended (default: body)
  • idPrefix — the prefix for the unique id generated for the live region (default: live-region-)
  • delay — the delay in milliseconds before the phrase is announced (default: 0)

Assertive example with a half second delay

const liveRegionDelayed = new OnDemandLiveRegion({
  level: 'assertive',
  delay: 500
})

liveRegionDelayed.say('Hello World! (sorry, delayed reaction)')

You can override the delay setting in a second argument when calling say:

liveRegionDelayed.say('Hello World! (sorry, delayed reaction)', 1000)

Say it over and over

Each time you use the say method, the extant live region (if it exists) is destroyed and a new one created. This means you can reliably make the same announcement multiple times. This is not guaranteed in other implementations, where a persistent live region is repopulated.

Tested in

  • Safari with VoiceOver
  • Chrome with VoiceOver
  • IE11 with JAWS
  • Chrome with JAWS
  • Firefox with NVDA
  • Chrome with ChromeVox

About

No description, website, or topics provided.

Resources

License

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.