2016-05-17 14 views
0

Testen auf Barrierefreiheit: Ich habe eine Angular-App, bei der Async den Inhalt in regelmäßigen Abständen aktualisiert. Wenn ich eine Seite in Chrome besuche und Talkback spiele, wird die Talkback-Funktion bei der asynchronen Aktualisierung angehalten.Android Talkback wird bei der asynchronen Seitenaktualisierung angehalten (Eingabehilfen für Eingabehilfen)

Das macht Sinn (wir wollen nicht, dass es alte Daten liest), lässt mich aber ein wenig hängen. Der Bildschirmleser stoppt einfach und kann beim Zurücklesen verwirrend oder verwirrend sein. Außerdem kann es für Benutzer schwierig sein, sich auf der Seite neu zu orientieren.

Ist es möglich, Talkback einfach neu zu starten oder zumindest in das Ereignis "stop" einzuloggen, um vielleicht die Person zu benachrichtigen, dass sie neu starten muss.

Ein abstraktes Beispiel für den Code:

<table> 
<tr ng-repeat="user in users"> 
<td>My name is {{ user.name }}</td> 
<td>My favorite thing is {{ user.favorite }}</td> 
</tr> 
</table> 

Der Bildschirmleser Anhalten mit einstimmt entweder ein Update auf user.name oder in Benutzer zu aktualisieren. So

je nachdem, wann die Asynchron passiert, kann es so etwas sagen wie:

"My name is Julie, cell." (stops)

"My name is Julie, cell. My favorite thing is" (stops)

Antwort

0

Dies ist das Standardverhalten für Screenreadern. Sie können das Attribut aria-live verwenden, um die Aktualisierungsregion zu markieren, damit die Screenreader wissen, was damit zu tun ist. Ich würde wahrscheinlich auch eine pause button für die Updates anbieten, weil viele Benutzer mit kognitiven Beeinträchtigungen Inhalte finden, die sich regelmäßig sehr ablenkend ändern, wenn sie versuchen, eine Aufgabe zu erledigen.