{# Page assets live INSIDE the content block (the dj-root): dj-navigate swaps only that region, so anything in extra_head/extra_scripts is missing when a visitor arrives by live navigation. Behaviour lives in static/js/site-pages.js. #}
DJE-022 Warning WebSocket
WebSocket accessibility flush fails silently
Error message
ARIA live region updates not announced by screen readersWhen 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>