Questions answered by this guide
- Why does NVDA lose focus when a Storyline layer opens?
- Should I use Set Focus to fix a Storyline layer focus problem?
- What is the yellow box that appears with Storyline's Set Focus trigger?
- How do I test keyboard and screen reader focus in a Storyline layer?
- Where should focus go when a Storyline layer closes?
- How do I fix focus problems across a large library of legacy Storyline courses?
What you'll learn
- Don't start by adding Set Focus, find out where focus is going and why first
- Screen reader focus, keyboard focus, and the visible focus indicator are three different things to test separately
- Check the layer's own settings, especially its 'Prevent the user from clicking on other layers' property, before adding a trigger
- For a large legacy library, test representative patterns instead of every file
What's inside
Storyline developers and eLearning accessibility specialists testing or fixing screen reader focus behavior in course layers
- 01The problem
- 02The three things you're testing
- 03Reproduce the issue before changing anything
- 04Check the layer before using Set Focus
- 05Testing Set Focus
- 06Test the complete focus path
- 07Legacy course remediation
- 08Common mistakes
- 09Testing checklist
Why it matters
Opening a layer in Storyline can move screen reader focus, keyboard focus, and the visible focus indicator in ways you didn't design. The common first response is to add a Set Focus trigger and point it at the layer. That can work, but it can also mask a different, real cause, like a layer property that was never turned on, and it introduces its own behavior that needs checking, including a visible yellow outline around whatever it focuses. The central rule worth keeping in mind: don't start by adding Set Focus. First find out where focus is actually going, and why, then decide what actually needs to change.
When you'll encounter this
- A layer opens over base content and NVDA seems to jump somewhere unexpected, or stops announcing anything new at all.
- A layer has interactive content, buttons, text entry, extra instructions, and you're not sure a screen reader user could find or use it.
- You've inherited a large library of Storyline courses built over time, possibly with inconsistent layer settings, and need a realistic way to check them.
- Someone on the team suggests adding a Set Focus trigger as the first response to a reported focus issue, before anyone has reproduced it.
Examples
Diagnosing before adding Set Focus
✕ Incorrect
NVDA seems to go quiet when a feedback layer opens. A Set Focus trigger is added immediately, pointed at the layer's title text, without first checking the layer's own settings or its Focus Order.
The real cause turns out to be the layer's "Prevent the user from clicking on other layers" property being off, so focus was never moving into the layer at all. The new trigger works, but it now overrides the layer's own Focus Order, so NVDA hears the title before instructions that were meant to come first.
✓ Correct
The layer's own properties are checked first. Turning on "Prevent the user from clicking on other layers" moves focus into the layer automatically, in the order Focus Order already defines, no trigger needed.
The underlying setting was the actual cause. Fixing it there keeps the screen reader's reading order intact instead of overriding it with a manually forced focus target.
What Set Focus changes visually
✕ Incorrect
A Set Focus trigger is added to a data entry field, tested only with NVDA running, then shipped.
Sighted keyboard users now see a bright yellow outline flash around the field every time the layer opens, with no screen reader running to explain why. It gets reported as a visual glitch.
✓ Correct
The same trigger is tested again with a keyboard alone, no screen reader running, before shipping.
This is the only way to catch a visible side effect that only shows up for a sighted keyboard user, not someone running NVDA.
Where focus goes when a layer closes
✕ Incorrect
A layer closes and focus is never checked afterward. It turns out focus lands back at the top of the browser window, not on the button that opened the layer.
A screen reader user has to navigate the slide again to find where they were, even though the visual experience looks fine to a sighted user who wasn't paying attention to focus.
✓ Correct
The layer's "Prevent the user from clicking on other layers" property is confirmed on, which returns focus to the button that opened the layer when it closes.
Focus lands somewhere predictable, instead of an inconsistent location that can differ by screen reader.
Best practices
- Separate three different things when you test a layer: what a screen reader announces and where its virtual focus is, where keyboard Tab actually moves, and what a sighted keyboard user sees as the visible focus indicator. These can behave differently from each other. Fixing what NVDA announces does not automatically mean Tab order is correct, and neither one confirms the visible focus outline is where it should be.
- Reproduce the issue before changing anything, and do it in the published course, not the Storyline editor's preview. Test the trigger that opens the layer with keyboard only, then test it again with NVDA running. Open the layer and note exactly where focus goes, navigate through its content, close it, and note where focus returns. The editor doesn't reliably reflect how a screen reader interacts with the published output, so testing anywhere else risks confirming a problem, or a fix, that isn't real.
- Check the layer itself before adding a Set Focus trigger. Look at whether "Prevent the user from clicking on other layers" is turned on, since this one setting controls where focus goes when the layer opens and closes. Check the layer's Focus Order, whether its interactive objects have accessible names, whether anything has timing that delays when it becomes available, and whether the layer is meant to work like a dialog the learner must address or just additional content they can ignore. A missing setting is a different problem than a missing trigger, and the two aren't fixed the same way.
- If you do add a Set Focus trigger, know what it's actually for: pointing focus at a specific object when the layer's own built-in behavior doesn't already handle it. After adding it, test it the same way you tested the original problem, once with NVDA and a keyboard together, and once with a keyboard alone and no screen reader running. The keyboard-only pass is where you'll catch the visible yellow outline Set Focus adds around the focused object, which can look like a rendering glitch to a sighted user who doesn't know where it came from. Also confirm the trigger hasn't changed the order the rest of the layer's content is announced, manually setting focus can move an object ahead of instructions that were meant to come first.
- Test the whole path, not just the moment a layer opens: trigger, layer opens, focus enters the layer, layer content, any interaction inside it, layer closes, focus returns. A fix at one step can look complete while a different step is still broken, closing behavior especially gets skipped.
- For a large library of existing courses, don't try to open and manually test every file. Identify the highest-use or highest-risk courses first. Look for the same layer pattern repeated across multiple courses, most legacy libraries reuse a handful of templates. Test a representative example of each pattern, fix the underlying pattern once, apply that same fix to the other courses that share it, then retest a sample after remediation rather than assuming the fix behaves identically everywhere. A pattern that tests correctly in one course is a strong signal, not a guarantee, for every course that reused it, especially if any of them customized the pattern differently.
Common mistakes
- Adding a Set Focus trigger before reproducing the issue, so the actual cause is never identified.
- Testing only with NVDA and never checking keyboard-only behavior on its own.
- Testing only with a keyboard and never confirming what NVDA actually announces.
- Checking Focus Order in the editor without testing the published course, where focus behavior actually happens.
- Fixing what happens when a layer opens and never checking what happens when it closes.
- Assuming a visible focus outline and a screen reader's virtual focus are the same thing. They can point to different places.
- Fixing one layer and moving on, without checking whether the same interaction pattern repeats across other slides or other courses.
Practical checklist
- Open the published course, not the Storyline editor.
- Test the trigger that opens the layer with keyboard only.
- Open the layer and confirm keyboard focus moved somewhere sensible.
- Test the same interaction again with NVDA running.
- Confirm NVDA announces the layer's meaningful content, not just its title.
- Test every interactive element inside the layer.
- Check the visible focus indicator, with and without a screen reader running.
- Close the layer.
- Confirm focus returns somewhere logical, not lost at the top of the page.
- Retest after any change, including after adding a Set Focus trigger.
How A11yCheck reviews this
A11yCheck's scan can identify potential issues with keyboard reachability and flag objects without accessible names, including inside layers, but it does not run NVDA and cannot determine where screen reader focus actually lands when a layer opens or closes. That's a real gap between what an automated review can check and what a live screen reader test can tell you, and it's exactly the kind of behavior that needs a manual NVDA and keyboard pass, not just a clean scan.
Frequently asked questions
Is NVDA losing focus when a layer opens a Storyline bug?
It's a commonly reported experience among Storyline developers, not something confirmed as a universal bug. In many cases the cause is a specific layer setting or a custom interaction, not the software itself, which is why reproducing and diagnosing the issue matters more than assuming a single explanation.
Should I always add a Set Focus trigger when a layer has a focus problem?
No. Set Focus is one tool for one specific situation, when you need focus pointed at an object the layer's own settings don't already handle. Adding it before checking the layer's properties and Focus Order can fix the symptom while introducing a new one, like overriding the reading order or adding a visible yellow outline nobody expected.
What's the yellow box people mention with Set Focus?
A visible yellow outline or glow that appears around whatever object Set Focus points focus to. It's meant to support accessibility, but it's visible to every keyboard user, not just someone running a screen reader, and it can look like a glitch to a sighted user who encounters it without knowing where it came from.
Where should focus go when a layer closes?
There's no single answer that fits every layer. A layer that behaves like a dialog usually needs focus to return to the button that opened it. A layer that's just additional content might not. Storyline's "Prevent the user from clicking on other layers" property affects this behavior, but confirm the actual result by testing, don't assume it.
Do I need to test every course in a large legacy library individually?
Not usually. Most legacy libraries reuse a handful of interaction patterns across many files. Testing a representative example of each pattern and fixing it once is more realistic than opening every file, but a fix confirmed in one course is a signal, not a guarantee, for every course that reused the same pattern.
Can A11yCheck tell me whether my Storyline layer focus is correct?
It can flag related issues like keyboard reachability or missing accessible names, but it doesn't run a screen reader and can't confirm where focus actually lands when a layer opens or closes. That still needs a real NVDA and keyboard test.
Related Guides
Keyboard Navigation Guide→
Keyboard navigation means every interactive object in your course, buttons, links, quiz answers, layers, can be reached and used with Tab, Shift+Tab, Enter, and arrow keys alone, with no mouse required.
Focus Order Guide→
Focus order is the order Tab moves through a slide's interactive elements. It should match the order things appear on screen, and it's checked by pressing Tab and watching where focus lands each time.
How to Test eLearning with a Screen Reader→
A practical, no-fear guide to testing your own course with a screen reader, from your first NVDA install to knowing exactly what you're listening for.
Storyline Accessibility Quick Checklist→
A fast, practical pass through your Storyline course before you publish it, 20 checks, about 15 minutes.
The Complete Guide to Storyline Accessibility→
Everything instructional designers need to know to make Storyline 360 courses accessible, with a good and bad example for every check.
Summary
When a Storyline layer causes a focus problem, don't start by adding Set Focus. Reproduce the issue in the published course first, with keyboard and with NVDA separately, and check the layer's own settings, especially "Prevent the user from clicking on other layers." Fix what's actually causing the problem, test the complete path from trigger to layer close, and if you do add Set Focus, check its visible yellow outline along with everything else. For a large legacy library, test representative patterns instead of every file, and treat a fix in one course as a signal for similar courses, not a guarantee.
Review your course before you publish it.
A11yCheck reviews Storyline and Rise courses for:
- Accessibility
- Course Quality
- Course Engagement
www.a11ycheck-dev.com