DJE-022
Warning
WebSocket
WebSocket accessibility flush fails silently
Error message
ARIA live region updates not announced by screen readers
When djust sends DOM updates over WebSocket, the accessibility flush mechanism (which updates ARIA live regions) may fail silently if the target element is not in the DOM at flush time. Screen reader users will not hear updates even though sighted users see them.
accessibility
silent-failure
websocket
Affected versions: >=0.2.0
Solution
Recommended
Ensure ARIA live regions are outside dj-update targets
Place ARIA live region containers outside elements that get fully replaced during updates. This ensures they persist in the DOM when the flush occurs.
Before (problematic)
<div id="content" dj-root>
<div aria-live="polite" id="status">
{{ status_message }}
</div>
<!-- ARIA region gets destroyed on update -->
</div>
After (fixed)
<div aria-live="polite" id="status">
{{ status_message }}
</div>
<div id="content" dj-root>
<!-- ARIA region persists outside update target -->
</div>