ARIA: aria-busy Attribute
Das globale aria-busy
-Attribut, das in ARIA-Live-Bereichen verwendet wird, zeigt an, dass ein Element gerade modifiziert wird und unterstützende Technologien möglicherweise warten sollten, bis die Änderungen abgeschlossen sind, bevor sie den Nutzer über die Aktualisierung informieren.
Wenn mehrere Teile eines Live-Bereichs geladen werden müssen, bevor Änderungen dem Nutzer angekündigt werden, setzen Sie aria-busy="true"
, bis das Laden abgeschlossen ist. Dann auf aria-busy="false"
setzen. Das verhindert, dass unterstützende Technologien Änderungen ankündigen, bevor die Aktualisierungen abgeschlossen sind.
Beschreibung
Es gibt einen Abschnitt mit Inhalten, der aktualisiert wird. Die Aktualisierungen sind wichtig und Sie möchten den Nutzer darüber informieren, wenn er modifiziert wurde. Daher haben Sie ihn in einen ARIA-Live-Bereich mit dem aria-live
-Attribut umgewandelt. Möglicherweise möchten Sie mehrere Komponenten dieses Abschnitts gleichzeitig aktualisieren, aber Sie können sich nicht sicher sein, dass alles gleichzeitig aktualisiert wird. Selbst wenn es sich um einen sehr wichtigen Live-Bereich mit aria-live="assertive"
handelt, möchten Sie den Nutzer nicht mehrmals unterbrechen, während verschiedene Teile des Inhalts geladen werden. Hierbei kann aria-busy
helfen.
Die aria-busy
-Eigenschaft ist eine optionale Eigenschaft von Live-Bereichen, die den Wert true
oder false
haben kann. Das aria-busy
-Attribut mit dem Wert true
kann einem Element hinzugefügt werden, das aktuell aktualisiert oder modifiziert wird, um der unterstützenden Technologie mitzuteilen, dass sie warten soll, bis die Modifikationen oder Änderungen abgeschlossen sind, bevor der Inhalt dem Nutzer angezeigt wird. Verwenden Sie die ariaBusy
-Eigenschaft des Objekts, um den Wert auf false
zu ändern, wenn das Herunterladen abgeschlossen ist.
ariaLiveElement.ariaBusy = "false";
Der Wert von aria-live
bestimmt, ob die Änderungen sofort nach dem Ändern des Werts auf false
angekündigt werden oder ob die unterstützende Technologie wartet, bis die aktuelle Aufgabe abgeschlossen ist, bevor sie den Nutzer unterbricht.
Innerhalb eines feed
Wenn ein Element mit der Rolle feed
auf aria-busy
zu true
eingestellt ist, werden die Änderungen, die innerhalb des Feeds auftreten, nicht angekündigt, mit Ausnahme von benutzerinitiierten Änderungen.
Innerhalb eines widget
Wenn Änderungen an einem gerenderten Widget einen Zustand schaffen würden, in dem dem Widget während der Skriptausführung erforderliche untergeordnete Elemente fehlen, setzen Sie aria-busy
auf true
auf dem Widget während des Aktualisierungsprozesses. Zum Beispiel, wenn ein gerendertes Baumgitter mehrere Äste aktualisiert, die nicht unbedingt gleichzeitig gerendert werden, wäre eine Alternative zum Ersetzen des gesamten Baumes in einem einzelnen Update, den Baum als beschäftigt zu markieren, während jeder der Äste modifiziert wird.
Werte
- false (Standard):
-
Es werden keine Updates für das Element erwartet.
- true
-
Das Element wird aktualisiert.
Zugehörige Schnittstellen
Element.ariaBusy
-
Die
ariaBusy
-Eigenschaft, Teil der Schnittstelle jedes Elements, spiegelt den Wert desaria-busy
-Attributs wider, das angibt, ob ein Element modifiziert wird.
<div
id="clock"
role="timer"
aria-live="polite"
aria-atomic="true"
aria-busy="false"></div>
const el = document.getElementById("clock");
console.log(el.ariaBusy); // false
el.ariaBusy = "true";
console.log(el.ariaBusy); // true
Zugehörige Rollen
Wird in ALLE Rollen verwendet
Spezifikationen
Specification |
---|
Accessible Rich Internet Applications (WAI-ARIA) # aria-busy |