The Accessibility extensions

MathJax maintains a set of extensions for providing advanced accessibility features. These extensions are an official part of MathJax are but stored in a separate code repository as well as on the CDN at cdn.mathjax.org/mathjax/contrib/a11y/.

The full documentation is available on GitHub and we summarize the options below.

Each accessibility extension can be loaded using the [Contrib] path variable. The following extensions have configuration options.

accessibility-menu.js

The standard approach is to only load the accessibility menu extension which provides opt-ins for end-users via the MathJax menu.

The accessibility menu extension can then be controlled in the configuration block for the MathJax menu, e.g.,

Note

The accessibility menu is part of all combined configurations.

explorer.js

The Explorer extension provides exploration tools for sub-expressions. It is the largest piece of the accessibility extensions, controlling highlighting, navigation and voicing.

auto-collapse.js

This extension will automatically collapse sub-expressions to allow the resulting equation to fit in the viewport width and will react to changes in viewport width. It will automatically load collapsible.js (see below).

collapsible.js

This extension generates a complexity metric and inserts elements that allow the expressions to be collapsed by the user by clicking on the expression based on that metric.

The extension only offers a configuration option to disable it.

semantic-enrich.js

This extension coordinates the creation and embedding of semantic information generated by the enrichment process within the MathJax output for use by the other extensions.

The extension only offers a configuration option to disable it.