MathMLElement: tabIndex property
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2023.
The tabIndex property of the MathMLElement interface represents the tab order of the current MathML element.
Tab order is as follows:
- Elements with a positive
tabIndex. Elements that have identicaltabIndexvalues should be navigated in the order they appear. Navigation proceeds from the lowesttabIndexto the highesttabIndex. - Elements that do not support the
tabIndexattribute or support it and assigntabIndexto0, in the order they appear.
Elements that are disabled do not participate in the tabbing order. Values don't need to be sequential, nor must they begin with any particular value. They may even be negative, though each browser trims very large values.
Value
An integer.
Examples
>Using the tabIndex property
html
<math id="math1" tabindex="2">
<msup>
<mi>a</mi>
<mn>2</mn>
</msup>
</math>
<math id="math2">
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
</math>
js
const math1 = document.getElementById("math1");
const math2 = document.getElementById("math2");
// Access and modify the tabIndex
console.log(math1.tabIndex); // 2
math2.tabIndex = 1; // Add math2 to the tab order before math1
// Programmatically focus on an element with negative tabIndex
math1.tabIndex = -1;
math1.focus(); // Works, even though it is not in the tabbing order
Result
Specifications
| Specification |
|---|
| HTML> # dom-tabindex> |
Browser compatibility
Loading…