The aria-busy attribute recognizes the changes done with a particular element and sends the signal to assistive technology to notify the user when the updates are already done. The purpose of aria-busy is to inform screen readers that the material within the entity’s subtree is being modified and must not be made known. The aria-busy attribute should be set to true or false by the web developer. Set aria-busy=”true” until processing is completed, then set aria-busy=”false.” This stops assistive technology from publicizing changes before they have been implemented. The aria-busy is used in all elements of the base markup. The aria-busy can also be used for ARIA Labels, such as aria-live, aria-relevant, aria-atomic, and ARIA live regions.
What is the function of the “aria-busy” ARIA Label?
The aria-busy attribute can be a substitute for the live region attribute that can have a value and be set to true or false. Assistive technology is dependent on signals sent from the aria-busy command before making the content visible to its users. One can set the attribute to “true” on a particular element of interest intended to be modified or updated.
What are the uses of the “aria-busy” ARIA Label?
Listed below are the uses of the “aria-busy” ARIA Label.
- Documents structure role: Documents structure roles are utilized to describe the structure of content. These restrictions are no longer applicable as browsers now support HTML components with the same semantic value. The roles lacking HTML equivalents, such as the presentation, toolbar, and tooltips role, give information about the document structure to assistive devices like as screen readers considering the lack of equivalent native HTML tags.
- Landmark roles: Landmark roles enable the identification of a web page’s organization and structure. Programmatically representing structural information supplied visually through a layout by classifying and identifying page actions. Using landmark roles, screen readers allow keyboard navigation to essential areas of a page. However, excessive landmark roles produce noise in screen readers, making it harder to comprehend the page’s general layout.
- Live region roles: Live region roles are used to describe elements with dynamically changing content. When dynamic changes are discernible to the naked eye, they are visible to sighted users. These roles inform users with low vision and blindness when content has been updated.
- Window roles: Window roles are defined as the sub-windows of the primary document window within the same window, including pop-up modal dialogues.
- Abstract roles: Abstract roles are meant solely for use by browsers to help in document organization and streamlining. Developers who write HTML markup should employ them. Therefore, no significant information will be transmitted to assistive technology or users.
Example Uses of “aria-busy” ARIA Label
Listed below are the example uses of the “aria-busy” ARIA Label.
In the example below, when the update is complete, content creators should ensure aria-busy=”false” and paragraphs are available. This attribute affects live UI areas. Authors can set aria-busy to true once the first part of a live area is loaded, and false when the last portion is loaded. Authors must be able to assign a particular contained element as aria-busy when a widget lacks required owned elements due to code execution or loading. One can indicate a certain document as busy in such time the tag has been configured. When updating eventually fails, set the aria-busy to “true”.
<h2>Current Score</h2> <o aria live="polite" aria-busy="true"></p>
<p ARIA live="polite" aria-busy="false">the current score is 25/0 after 5 overs</p>
<h1>Testing <a href="https://www.holisticseo.digital/TR/wai-aria-1.1/#aria-busy"><code>aria-busy</code></a> with screen readers</h1> <p><button id="start">Save my changes</button></p> <p id="busy1" aria-busy="false">Activating the button above will put a state of <code>aria-busy="true"</code> on this <code>p</code> element for 15 seconds. When <code>aria-busy="true"</code>, the content is not available to JAWS users.</p <p>Tested: works with JAWS, does not work with NVDA, or VoiceOver on iOS</p>
<div aria live="polite" aria-atomic="true" aria-busy="true"> <span>Amount: $600</span> </div>
<button type="button" aria-controls="loader">Load the Document</button> <div aria-atomic="true" aria-busy="true" id="loader"> loading... </div>
<span aria-busy="true"> This element is currently being updated. </span>
Listed below are the related ARIA Labels to “aria-busy”.
- aria-live: The aria-live is related to aria-busy because they both notify assistive technology that a particular element is being changed or done updating before notifying its user. The aria-live command defines the type of updates to assistive technologies and what their users should expect from the live region.
- aria-relevant: The aria-relevant is related to aria-busy because they both send information to their users and there have been modifications with a certain element. The aria-relevant indicates what user agent notice will be triggered when a live region’s accessibility tree is updated.
- aria-atomic: The aria-atomic is related to aria-busy because they both signify an element is being changed, and assistive technology may prefer to wait before notifying the user. The aria-atomic determines whether assistive technologies will provide all or part of a modified region based on the aria-relevant characteristic.