Problem 1: Defekte Kopfzeilen-Navigation / DOM-Manipulation

Hallo @awesomerobot, ich bin ein Kollege von Cody und ein Accessibility Engineer. Ich habe mir das Repository angesehen, um das Problem zu diagnostizieren. Wie Sie vielleicht bereits wissen, scheint das Kernproblem darin zu bestehen, dass (1) Inhalte in verschleierten Beiträgen für Screenreader nicht sichtbar sind und (2) Beiträge nur dann entschleiert werden, wenn sie sich im Ansichtsbereich eines Benutzers gemäß PostStreamViewportTracker befinden.

Bei der Überlegung einer möglichen Lösung möchte ich zwei Dinge optimieren: (1) die Navigation jedes Beitrags nach Überschrift mit Screenreadern ermöglichen und (2) Änderungen am Discourse-Repository und Auswirkungen auf die Leistung minimieren.

Der von mir empfohlene Ansatz besteht darin, ein leichtgewichtige Wrapper für jeden geladenen Beitrag beizubehalten, der die semantische H2-Überschrift für die Navigationsüberschrift enthält, während der Hauptinhalt des Beitrags verschleiert bleibt. Dies hält die Überschriften für assistive Technologien stabil, ohne das DOM auf der gesamten Seite aufzublähen. Wenn ein Benutzer über die Überschrift-Navigation zu einer H2-Überschrift eines Beitrags gelangt, löst der Screenreader einen Seiten-Scroll aus, der wiederum den Hauptinhalt des Beitrags an Ort und Stelle entschleiert.

Die Machbarkeit dieser Lösung hängt davon ab, wann der nächste Stapel von Beiträgen geladen wird. Eine optionale Verbesserung ist eine reine Screenreader-Überschrift „Weitere Beiträge laden“ (ähnlich der in Ihrem PR vorgeschlagenen „Region zum Laden weiterer Beiträge“) am Ende der Liste der geladenen Beiträge. Wenn diese Überschrift in Sicht kommt oder aus dem Überschriften-Rotor ausgewählt wird, lädt sie den nächsten Stapel und kündigt die Fertigstellung über eine aria-live=polite-Nachricht an.

3 „Gefällt mir“