Screen readers and layers

Jun 22, 2020

I am working on a project that we are testing for accessibility using NVDA and JAWS.
A lot of the information we are providing is using buttons that reveal layers. 

The problem we are having is that there doesn't seem to be any way for the screen reader to automatically read the information on these layers. With the latest updates to Storyline, navigation using a screen reader is with the standard keyboard navigation, the down arrow or insert down arrow to read all text on a page.

When someone activates a button and a new layer appears there is no indicator that there is new information on the page that needs to be read by the screen reader. 

As a sighted person I can see that the screen has changed, and I am able to select insert down arrow to hear the new information - someone who requires this software cannot do this.

Is there something I am missing from the build process or are layers not usable with screen readers?

12 Replies
Sam Hill

Hi Emma, the only way to force the screen reader to read new layers is to select the slide property that prevents the user from clicking on the base layer. This exclusivity seems to trigger the content to be read. You then have a new problem to overcome in that the base cannot be selected, and so you might have to add some duplicated items to the layer (navigation etc).

I agree that this is a little annoying. Coming from a hand coding background, we could add directive to content to force it to be read such as aria-live="assertive". The only other suggestion would be to add screen reader only instructions to let users know they must navigate down with their arrow keys to read the content. 

Diane Bullock

This post is 2 years old. I still have this problem (screenreader not reading layers, or if it does the base layer buttons can't be used). Has the new version not addressed this?

The templates you have available are not accessible. If they are not taken down or modified to be so, they just create problems, especially new users. They create all of us lots of extra work. As least they could come with a warning!

Diane Bullock

still not resolved, so some input here if anyone knows anything would be helpful. It seems, that the layer 'fault' is still there as per the first post. I can't get NVDA screenreader to read a layer at all (unless it's Dialogue - which I can't use as the buttons on the base layer aren't active). 
I'm wondering if a cheat would work? My layer text is short, if I added this as alt text to the button, or a hidden graphic, could that be a solution?

Or, should layers be avoided for this reason altogether and instead we jump to another slide, or work with text blocks with state of hidden/normal? All seems to be getting very complicated

 

Sam Hill

Hi Diane, the screen reader should still be able to access layer content even if it is not a dialogue box or the user can't interact with the base layer.

Can you confirm that you have the layer contents in the correct order in the focus order or the slide. For example, if you have a button that is selected that reveals the layer, is the layer contents directly after the button that is selected?

Also, I have found animating text in on a layer can be problematic, and so if you are fading text in or introducing the text later on in the timeline of a layer, try removing any animation and have the content at the start of the timeline.

Let me know.

Tanudja Gibson

Hi Sam,

What do you mean by "Screen-reader only instructions"? Is this some special way of interacting with a screen reader or do you mean just add a text box that says "navigate down with arrow keys to read the content that just appeared on the layer"? Won't all learners see this though? That's a lot of real estate if you have multiple layers. Thanks

Sam Hill

Hi Tanudja,

You can add instructions that only a screen reader can access. This could be a text field with instructions that is off screen, but still within the correct order in the focus order. The text can also be hidden behind elements on screen so as not to be seen by people who do not need the instruction.

Cheers,
Sam