Interface MathfieldWithKeyboard

The MathfieldElement class represent a DOM element that displays math equations. It is a subclass of the standard HTMLElement class and as such inherits all of its properties and methods.

It inherits many useful properties and methods from [[HTMLElement]] such as style, tabIndex, addEventListener(), getAttribute(), etc...

It is the main entry point to the MathLive library.

It is typically used to render a single equation. To render multiple equations, use multiple instances of MathfieldElement. The MathfieldElement class provides special properties and methods to control the display and behavior of <math-field> elements.

To create a new MathfieldElement:

// 1. Create a new MathfieldElement
const mf = new MathfieldElement();

// 2. Attach it to the DOM
document.body.appendChild(mf);

The MathfieldElement constructor has an optional argument of [[MathfieldOptions]] to configure the element. The options can also be modified later:

// Setting options during construction
const mf = new MathfieldElement({ smartFence: false });

// Modifying options after construction
mf.smartFence = true;

To customize the appearance of the mathfield, declare the following CSS variables (custom properties) in a ruleset that applies to the mathfield.

math-field {
--hue: 10 // Set the highlight color and caret to a reddish hue
}

Alternatively you can set these CSS variables programatically:

document.body.style.setProperty("--hue", "10");
CSS Variable Usage
--hue Hue of the highlight color and the caret
--contains-highlight-background-color Backround property for items that contain the caret
--primary-color Primary accent color, used for example in the virtual keyboard
--text-font-family The font stack used in text mode
--smart-fence-opacity Opacity of a smart fence (default is 50%)
--smart-fence-color Color of a smart fence (default is current color)

You can customize the appearance and zindex of the virtual keyboard panel with some CSS variables associated with a selector that applies to the virtual keyboard panel container.

Read more about customizing the virtual keyboard appearance

To style the virtual keyboard toggle, use the virtual-keyboard-toggle CSS part. To use it, define a CSS rule with a ::part() selector for example:

math-field::part(virtual-keyboard-toggle) {
color: red;
}

An attribute is a key-value pair set as part of the tag:

<math-field letter-shape-style="tex"></math-field>

The supported attributes are listed in the table below with their corresponding property.

The property can also be changed directly on the MathfieldElement object:

 getElementById('mf').value = "\\sin x";
getElementById('mf').letterShapeStyle = "text";

The values of attributes and properties are reflected, which means you can change one or the other, for example:

getElementById('mf').setAttribute('letter-shape-style',  'french');
console.log(getElementById('mf').letterShapeStyle);
// Result: "french"
getElementById('mf').letterShapeStyle ='tex;
console.log(getElementById('mf').getAttribute('letter-shape-style');
// Result: 'tex'

An exception is the value property, which is not reflected on the value attribute: for consistency with other DOM elements, the value attribute remains at its initial value.

Attribute Property
disabled mf.disabled
default-mode mf.defaultMode
letter-shape-style mf.letterShapeStyle
min-font-scale mf.minFontScale
popover-policy mf.popoverPolicy
math-mode-space mf.mathModeSpace
read-only mf.readOnly
remove-extraneous-parentheses mf.removeExtraneousParentheses
smart-fence mf.smartFence
smart-mode mf.smartMode
smart-superscript mf.smartSuperscript
inline-shortcut-timeout mf.inlineShortcutTimeout
script-depth mf.scriptDepth
value value
math-virtual-keyboard-policy mathVirtualKeyboardPolicy

See [[MathfieldOptions]] for more details about these options.

In addition, the following global attributes can also be used:

  • class
  • data-*
  • hidden
  • id
  • item*
  • style
  • tabindex

Listen to these events by using addEventListener(). For events with additional arguments, the arguments are available in event.detail.

Event Name Description
beforeinput The value of the mathfield is about to be modified.
input The value of the mathfield has been modified. This happens on almost every keystroke in the mathfield. The evt.data property includes a copy of evt.inputType. See InputEvent
change The user has committed the value of the mathfield. This happens when the user presses Return or leaves the mathfield.
selection-change The selection (or caret position) in the mathfield has changed
mode-change The mode (math, text) of the mathfield has changed
undo-state-change The state of the undo stack has changed. The evt.detail.type indicate if a snapshot was taken or an undo performed.
read-aloud-status-change The status of a read aloud operation has changed
before-virtual-keyboard-toggle The visibility of the virtual keyboard panel is about to change. The evt.detail.visible property indicate if the keyboard will be visible or not. Listen for this event on window.mathVirtualKeyboard
virtual-keyboard-toggle The visibility of the virtual keyboard panel has changed. Listen for this event on window.mathVirtualKeyboard
geometrychange The geometry of the virtual keyboard has changed. The evt.detail.boundingRect property is the new bounding rectangle of the virtual keyboard. Listen for this event on window.mathVirtualKeyboard
blur The mathfield is losing focus
focus The mathfield is gaining focus
move-out The user has pressed an arrow key or the tab key, but there is nowhere to go. This is an opportunity to change the focus to another element if desired.
`detail: {direction: 'forward'
keypress The user pressed a physical keyboard key
mount The element has been attached to the DOM
unmount The element is about to be removed from the DOM

zindex, events, attribute, attributes, property, properties, parts, variables, css, mathfield, mathfieldelement

interface MathfieldWithKeyboard {
    accessKey: string;
    accessKeyLabel: string;
    ariaAtomic: null | string;
    ariaAutoComplete: null | string;
    ariaBrailleLabel: null | string;
    ariaBrailleRoleDescription: null | string;
    ariaBusy: null | string;
    ariaChecked: null | string;
    ariaColCount: null | string;
    ariaColIndex: null | string;
    ariaColIndexText: null | string;
    ariaColSpan: null | string;
    ariaCurrent: null | string;
    ariaDescription: null | string;
    ariaDisabled: null | string;
    ariaExpanded: null | string;
    ariaHasPopup: null | string;
    ariaHidden: null | string;
    ariaInvalid: null | string;
    ariaKeyShortcuts: null | string;
    ariaLabel: null | string;
    ariaLevel: null | string;
    ariaLive: null | string;
    ariaModal: null | string;
    ariaMultiLine: null | string;
    ariaMultiSelectable: null | string;
    ariaOrientation: null | string;
    ariaPlaceholder: null | string;
    ariaPosInSet: null | string;
    ariaPressed: null | string;
    ariaReadOnly: null | string;
    ariaRelevant: null | string;
    ariaRequired: null | string;
    ariaRoleDescription: null | string;
    ariaRowCount: null | string;
    ariaRowIndex: null | string;
    ariaRowIndexText: null | string;
    ariaRowSpan: null | string;
    ariaSelected: null | string;
    ariaSetSize: null | string;
    ariaSort: null | string;
    ariaValueMax: null | string;
    ariaValueMin: null | string;
    ariaValueNow: null | string;
    ariaValueText: null | string;
    assignedSlot: null | HTMLSlotElement;
    ATTRIBUTE_NODE: 2;
    attributes: NamedNodeMap;
    attributeStyleMap: StylePropertyMap;
    autocapitalize: string;
    autofocus: boolean;
    baseURI: string;
    CDATA_SECTION_NODE: 4;
    childElementCount: number;
    childNodes: NodeListOf<ChildNode>;
    children: HTMLCollection;
    className: string;
    clientHeight: number;
    clientLeft: number;
    clientTop: number;
    clientWidth: number;
    COMMENT_NODE: 8;
    contentEditable: string;
    currentCSSZoom: number;
    dataset: DOMStringMap;
    dir: string;
    DOCUMENT_FRAGMENT_NODE: 11;
    DOCUMENT_NODE: 9;
    DOCUMENT_POSITION_CONTAINED_BY: 16;
    DOCUMENT_POSITION_CONTAINS: 8;
    DOCUMENT_POSITION_DISCONNECTED: 1;
    DOCUMENT_POSITION_FOLLOWING: 4;
    DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32;
    DOCUMENT_POSITION_PRECEDING: 2;
    DOCUMENT_TYPE_NODE: 10;
    draggable: boolean;
    ELEMENT_NODE: 1;
    enterKeyHint: string;
    ENTITY_NODE: 6;
    ENTITY_REFERENCE_NODE: 5;
    firstChild: null | ChildNode;
    firstElementChild: null | Element;
    hidden: boolean;
    id: string;
    inert: boolean;
    innerHTML: string;
    innerText: string;
    inputMode: string;
    isConnected: boolean;
    isContentEditable: boolean;
    lang: string;
    lastChild: null | ChildNode;
    lastElementChild: null | Element;
    localName: string;
    mathVirtualKeyboardPolicy: string;
    namespaceURI: null | string;
    nextElementSibling: null | Element;
    nextSibling: null | ChildNode;
    nodeName: string;
    nodeType: number;
    nodeValue: null | string;
    nonce?: string;
    NOTATION_NODE: 12;
    offsetHeight: number;
    offsetLeft: number;
    offsetParent: null | Element;
    offsetTop: number;
    offsetWidth: number;
    onabort: null | ((this: GlobalEventHandlers, ev: UIEvent) => any);
    onanimationcancel: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any);
    onanimationend: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any);
    onanimationiteration: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any);
    onanimationstart: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any);
    onauxclick: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onbeforeinput: null | ((this: GlobalEventHandlers, ev: InputEvent) => any);
    onbeforetoggle: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onblur: null | ((this: GlobalEventHandlers, ev: FocusEvent) => any);
    oncancel: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oncanplay: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oncanplaythrough: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onchange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onclick: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onclose: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oncontextlost: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oncontextmenu: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    oncontextrestored: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oncopy: null | ((this: GlobalEventHandlers, ev: ClipboardEvent) => any);
    oncuechange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oncut: null | ((this: GlobalEventHandlers, ev: ClipboardEvent) => any);
    ondblclick: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    ondrag: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondragend: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondragenter: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondragleave: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondragover: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondragstart: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondrop: null | ((this: GlobalEventHandlers, ev: DragEvent) => any);
    ondurationchange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onemptied: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onended: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onerror: OnErrorEventHandler;
    onfocus: null | ((this: GlobalEventHandlers, ev: FocusEvent) => any);
    onformdata: null | ((this: GlobalEventHandlers, ev: FormDataEvent) => any);
    onfullscreenchange: null | ((this: Element, ev: Event) => any);
    onfullscreenerror: null | ((this: Element, ev: Event) => any);
    ongotpointercapture: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    oninput: null | ((this: GlobalEventHandlers, ev: Event) => any);
    oninvalid: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onkeydown: null | ((this: GlobalEventHandlers, ev: KeyboardEvent) => any);
    onkeypress: null | ((this: GlobalEventHandlers, ev: KeyboardEvent) => any);
    onkeyup: null | ((this: GlobalEventHandlers, ev: KeyboardEvent) => any);
    onload: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onloadeddata: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onloadedmetadata: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onloadstart: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onlostpointercapture: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onmousedown: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onmouseenter: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onmouseleave: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onmousemove: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onmouseout: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onmouseover: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onmouseup: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any);
    onpaste: null | ((this: GlobalEventHandlers, ev: ClipboardEvent) => any);
    onpause: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onplay: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onplaying: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onpointercancel: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointerdown: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointerenter: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointerleave: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointermove: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointerout: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointerover: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onpointerup: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any);
    onprogress: null | ((this: GlobalEventHandlers, ev: ProgressEvent<EventTarget>) => any);
    onratechange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onreset: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onresize: null | ((this: GlobalEventHandlers, ev: UIEvent) => any);
    onscroll: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onscrollend: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onsecuritypolicyviolation: null | ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any);
    onseeked: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onseeking: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onselect: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onselectionchange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onselectstart: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onslotchange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onstalled: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onsubmit: null | ((this: GlobalEventHandlers, ev: SubmitEvent) => any);
    onsuspend: null | ((this: GlobalEventHandlers, ev: Event) => any);
    ontimeupdate: null | ((this: GlobalEventHandlers, ev: Event) => any);
    ontoggle: null | ((this: GlobalEventHandlers, ev: Event) => any);
    ontouchcancel?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any);
    ontouchend?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any);
    ontouchmove?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any);
    ontouchstart?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any);
    ontransitioncancel: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any);
    ontransitionend: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any);
    ontransitionrun: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any);
    ontransitionstart: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any);
    onvolumechange: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onwaiting: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onwebkitanimationend: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onwebkitanimationiteration: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onwebkitanimationstart: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onwebkittransitionend: null | ((this: GlobalEventHandlers, ev: Event) => any);
    onwheel: null | ((this: GlobalEventHandlers, ev: WheelEvent) => any);
    outerHTML: string;
    outerText: string;
    ownerDocument: Document;
    parentElement: null | HTMLElement;
    parentNode: null | ParentNode;
    popover: null | string;
    prefix: null | string;
    previousElementSibling: null | Element;
    previousSibling: null | ChildNode;
    PROCESSING_INSTRUCTION_NODE: 7;
    role: null | string;
    scrollHeight: number;
    scrollLeft: number;
    scrollTop: number;
    scrollWidth: number;
    shadowRoot: null | ShadowRoot;
    slot: string;
    spellcheck: boolean;
    tabIndex: number;
    tagName: string;
    TEXT_NODE: 3;
    textContent: null | string;
    title: string;
    translate: boolean;
    triggerBtn: HTMLButtonElement;
    virtualKeyboard: VirtualKeyboard;
    writingSuggestions: string;
    backgroundColorMap: ((name: string) => undefined | string);
    caretPoint: null | Readonly<{
        x: number;
        y: number;
    }>;
    classList: DOMTokenList;
    colorMap: ((name: string) => undefined | string);
    computeEngine: never;
    decimalSeparator: never;
    defaultMode: "text" | "math" | "inline-math";
    disabled: boolean;
    environmentPopoverPolicy: "auto" | "off" | "on";
    get errors(): readonly LatexSyntaxError[];
    expression: any;
    fontsDirectory: never;
    get form(): null | HTMLFormElement;
    inlineShortcuts: Readonly<InlineShortcutDefinitions>;
    inlineShortcutTimeout: number;
    get isSelectionEditable(): boolean;
    keybindings: readonly Keybinding[];
    get lastOffset(): number;
    letterShapeStyle:
        | "auto"
        | "tex"
        | "iso"
        | "french"
        | "upright";
    locale: never;
    macros: Readonly<MacroDictionary>;
    mathModeSpace: string;
    get mathVirtualKeyboard(): never;
    menuItems: readonly MenuItem[];
    minFontScale: number;
    mode: ParseMode;
    get name(): string;
    onExport: ((from: Mathfield, latex: string, range: Range) => string);
    onInlineShortcut: ((sender: Mathfield, symbol: string) => string);
    onScrollIntoView: null | ((sender: Mathfield) => void);
    part: DOMTokenList;
    placeholderSymbol: string;
    popoverPolicy: "auto" | "off";
    position: number;
    readonly: boolean;
    readOnly: boolean;
    registers: Readonly<Registers>;
    removeExtraneousParentheses: boolean;
    scriptDepth: number | [number, number];
    selection: Readonly<Selection>;
    get selectionIsCollapsed(): boolean;
    smartFence: boolean;
    smartMode: boolean;
    smartSuperscript: boolean;
    soundsDirectory: never;
    strings: never;
    style: CSSStyleDeclaration;
    get type(): string;
    value: string;
    virtualKeyboardTargetOrigin: string;
    addEventListener<K>(type: K, listener: ((this: HTMLElement, ev: HTMLElementEventMap[K]) => any), options?: boolean | AddEventListenerOptions): void;
    addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
    after(...nodes: (string | Node)[]): void;
    animate(keyframes: null | Keyframe[] | PropertyIndexedKeyframes, options?: number | KeyframeAnimationOptions): Animation;
    append(...nodes: (string | Node)[]): void;
    appendChild<T>(node: T): T;
    applyStyle(style: Readonly<Style>, options?: Range | {
        operation?: "set" | "toggle";
        range?: Range;
    }): void;
    attachInternals(): ElementInternals;
    attachShadow(init: ShadowRootInit): ShadowRoot;
    attributeChangedCallback(name: string, oldValue: unknown, newValue: unknown): void;
    before(...nodes: (string | Node)[]): void;
    blur(): void;
    canRedo(): boolean;
    canUndo(): boolean;
    checkVisibility(options?: CheckVisibilityOptions): boolean;
    click(): void;
    cloneNode(subtree?: boolean): Node;
    closest<K>(selector: K): null | HTMLElementTagNameMap[K];
    closest<K>(selector: K): null | SVGElementTagNameMap[K];
    closest<K>(selector: K): null | MathMLElementTagNameMap[K];
    closest<E>(selectors: string): null | E;
    compareDocumentPosition(other: Node): number;
    computedStyleMap(): StylePropertyMapReadOnly;
    connectedCallback(): void;
    contains(other: null | Node): boolean;
    disconnectedCallback(): void;
    dispatchEvent(event: Event): boolean;
    executeCommand(command: Selector | [Selector, ...any[]]): boolean;
    focus(): void;
    getAnimations(options?: GetAnimationsOptions): Animation[];
    getAttribute(qualifiedName: string): null | string;
    getAttributeNames(): string[];
    getAttributeNode(qualifiedName: string): null | Attr;
    getAttributeNodeNS(namespace: null | string, localName: string): null | Attr;
    getAttributeNS(namespace: null | string, localName: string): null | string;
    getBoundingClientRect(): DOMRect;
    getClientRects(): DOMRectList;
    getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
    getElementsByTagName<K>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
    getElementsByTagName<K>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
    getElementsByTagName<K>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
    getElementsByTagName<K>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
    getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
    getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
    getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
    getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1998/Math/MathML", localName: string): HTMLCollectionOf<MathMLElement>;
    getElementsByTagNameNS(namespace: null | string, localName: string): HTMLCollectionOf<Element>;
    getHTML(options?: GetHTMLOptions): string;
    getOffsetDepth(offset: number): number;
    getPromptRange(id: string): null | Range;
    getPrompts(filter?: {
        correctness?: "undefined" | "correct" | "incorrect";
        id?: string;
        locked?: boolean;
    }): string[];
    getPromptState(id: string): [undefined | "correct" | "incorrect", boolean];
    getPromptValue(placeholderId: string, format?: OutputFormat): string;
    getRootNode(options?: GetRootNodeOptions): Node;
    getValue(format?: OutputFormat): string;
    getValue(start: number, end: number, format?: OutputFormat): string;
    getValue(range: Range, format?: OutputFormat): string;
    getValue(selection: Selection, format?: OutputFormat): string;
    handleEvent(evt: Event): void;
    hasAttribute(qualifiedName: string): boolean;
    hasAttributeNS(namespace: null | string, localName: string): boolean;
    hasAttributes(): boolean;
    hasChildNodes(): boolean;
    hasFocus(): boolean;
    hasPointerCapture(pointerId: number): boolean;
    hidePopover(): void;
    hitboxFromOffset(offset: number): null | DOMRect;
    insert(s: string, options?: InsertOptions): boolean;
    insertAdjacentElement(where: InsertPosition, element: Element): null | Element;
    insertAdjacentHTML(position: InsertPosition, string: string): void;
    insertAdjacentText(where: InsertPosition, data: string): void;
    insertBefore<T>(node: T, child: null | Node): T;
    isDefaultNamespace(namespace: null | string): boolean;
    isEqualNode(otherNode: null | Node): boolean;
    isSameNode(otherNode: null | Node): boolean;
    lookupNamespaceURI(prefix: null | string): null | string;
    lookupPrefix(namespace: null | string): null | string;
    matches(selectors: string): boolean;
    normalize(): void;
    offsetFromPoint(x: number, y: number, options?: {
        bias?: 0 | 1 | -1;
    }): number;
    onPointerDown(): void;
    prepend(...nodes: (string | Node)[]): void;
    querySelector<K>(selectors: K): null | HTMLElementTagNameMap[K];
    querySelector<K>(selectors: K): null | SVGElementTagNameMap[K];
    querySelector<K>(selectors: K): null | MathMLElementTagNameMap[K];
    querySelector<K>(selectors: K): null | HTMLElementDeprecatedTagNameMap[K];
    querySelector<E>(selectors: string): null | E;
    querySelectorAll<K>(selectors: K): NodeListOf<HTMLElementTagNameMap[K]>;
    querySelectorAll<K>(selectors: K): NodeListOf<SVGElementTagNameMap[K]>;
    querySelectorAll<K>(selectors: K): NodeListOf<MathMLElementTagNameMap[K]>;
    querySelectorAll<K>(selectors: K): NodeListOf<HTMLElementDeprecatedTagNameMap[K]>;
    querySelectorAll<E>(selectors: string): NodeListOf<E>;
    queryStyle(style: Readonly<Style>): "some" | "all" | "none";
    releasePointerCapture(pointerId: number): void;
    remove(): void;
    removeAttribute(qualifiedName: string): void;
    removeAttributeNode(attr: Attr): Attr;
    removeAttributeNS(namespace: null | string, localName: string): void;
    removeChild<T>(child: T): T;
    removeEventListener<K>(type: K, listener: ((this: HTMLElement, ev: HTMLElementEventMap[K]) => any), options?: boolean | EventListenerOptions): void;
    removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
    replaceChild<T>(node: Node, child: T): T;
    replaceChildren(...nodes: (string | Node)[]): void;
    replaceWith(...nodes: (string | Node)[]): void;
    requestFullscreen(options?: FullscreenOptions): Promise<void>;
    requestPointerLock(options?: PointerLockOptions): Promise<void>;
    resetUndo(): void;
    scroll(options?: ScrollToOptions): void;
    scroll(x: number, y: number): void;
    scrollBy(options?: ScrollToOptions): void;
    scrollBy(x: number, y: number): void;
    scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
    scrollTo(options?: ScrollToOptions): void;
    scrollTo(x: number, y: number): void;
    select(): void;
    setAttribute(qualifiedName: string, value: string): void;
    setAttributeNode(attr: Attr): null | Attr;
    setAttributeNodeNS(attr: Attr): null | Attr;
    setAttributeNS(namespace: null | string, qualifiedName: string, value: string): void;
    setCaretPoint(x: number, y: number): boolean;
    setHTMLUnsafe(html: string): void;
    setPointerCapture(pointerId: number): void;
    setPromptState(id: string, state:
        | undefined
        | "undefined"
        | "correct"
        | "incorrect", locked?: boolean): void;
    setPromptValue(id: string, content: string, insertOptions: Omit<InsertOptions, "insertionMode">): void;
    setValue(value?: string, options?: InsertOptions): void;
    showMenu(_: {
        location: {
            x: number;
            y: number;
        };
        modifiers: KeyboardModifiers;
    }): boolean;
    showPopover(): void;
    toggleAttribute(qualifiedName: string, force?: boolean): boolean;
    togglePopover(options?: boolean): boolean;
    upgradeProperty(prop: string): void;
    webkitMatchesSelector(selectors: string): boolean;
}

Hierarchy (view full)

Accessing and changing the content

Customization

Focus

Hooks

Other

accessKey accessKeyLabel ariaAtomic ariaAutoComplete ariaBrailleLabel ariaBrailleRoleDescription ariaBusy ariaChecked ariaColCount ariaColIndex ariaColIndexText ariaColSpan ariaCurrent ariaDescription ariaDisabled ariaExpanded ariaHasPopup ariaHidden ariaInvalid ariaKeyShortcuts ariaLabel ariaLevel ariaLive ariaModal ariaMultiLine ariaMultiSelectable ariaOrientation ariaPlaceholder ariaPosInSet ariaPressed ariaReadOnly ariaRelevant ariaRequired ariaRoleDescription ariaRowCount ariaRowIndex ariaRowIndexText ariaRowSpan ariaSelected ariaSetSize ariaSort ariaValueMax ariaValueMin ariaValueNow ariaValueText assignedSlot ATTRIBUTE_NODE attributes attributeStyleMap autocapitalize autofocus baseURI CDATA_SECTION_NODE childElementCount childNodes children className clientHeight clientLeft clientTop clientWidth COMMENT_NODE contentEditable currentCSSZoom dataset dir DOCUMENT_FRAGMENT_NODE DOCUMENT_NODE DOCUMENT_POSITION_CONTAINED_BY DOCUMENT_POSITION_CONTAINS DOCUMENT_POSITION_DISCONNECTED DOCUMENT_POSITION_FOLLOWING DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC DOCUMENT_POSITION_PRECEDING DOCUMENT_TYPE_NODE draggable ELEMENT_NODE enterKeyHint ENTITY_NODE ENTITY_REFERENCE_NODE firstChild firstElementChild hidden id inert innerHTML innerText inputMode isConnected isContentEditable lang lastChild lastElementChild localName namespaceURI nextElementSibling nextSibling nodeName nodeType nodeValue nonce? NOTATION_NODE offsetHeight offsetLeft offsetParent offsetTop offsetWidth onabort onanimationcancel onanimationend onanimationiteration onanimationstart onauxclick onbeforeinput onbeforetoggle onblur oncancel oncanplay oncanplaythrough onchange onclick onclose oncontextlost oncontextmenu oncontextrestored oncopy oncuechange oncut ondblclick ondrag ondragend ondragenter ondragleave ondragover ondragstart ondrop ondurationchange onemptied onended onerror onfocus onformdata onfullscreenchange onfullscreenerror ongotpointercapture oninput oninvalid onkeydown onkeypress onkeyup onload onloadeddata onloadedmetadata onloadstart onlostpointercapture onmousedown onmouseenter onmouseleave onmousemove onmouseout onmouseover onmouseup onpaste onpause onplay onplaying onpointercancel onpointerdown onpointerenter onpointerleave onpointermove onpointerout onpointerover onpointerup onprogress onratechange onreset onresize onscroll onscrollend onsecuritypolicyviolation onseeked onseeking onselect onselectionchange onselectstart onslotchange onstalled onsubmit onsuspend ontimeupdate ontoggle ontouchcancel? ontouchend? ontouchmove? ontouchstart? ontransitioncancel ontransitionend ontransitionrun ontransitionstart onvolumechange onwaiting onwebkitanimationend onwebkitanimationiteration onwebkitanimationstart onwebkittransitionend onwheel outerHTML outerText ownerDocument parentElement parentNode popover prefix previousElementSibling previousSibling PROCESSING_INSTRUCTION_NODE role scrollHeight scrollLeft scrollTop scrollWidth shadowRoot slot spellcheck tabIndex tagName TEXT_NODE textContent title translate triggerBtn virtualKeyboard writingSuggestions classList computeEngine decimalSeparator disabled fontsDirectory form isSelectionEditable locale mathVirtualKeyboard mode name part readonly readOnly soundsDirectory strings style type addEventListener after animate append appendChild attachInternals attachShadow attributeChangedCallback before checkVisibility click cloneNode closest compareDocumentPosition computedStyleMap connectedCallback contains disconnectedCallback dispatchEvent executeCommand getAnimations getAttribute getAttributeNames getAttributeNode getAttributeNodeNS getAttributeNS getBoundingClientRect getClientRects getElementsByClassName getElementsByTagName getElementsByTagNameNS getHTML getPromptState getRootNode handleEvent hasAttribute hasAttributeNS hasAttributes hasChildNodes hasPointerCapture hidePopover insertAdjacentElement insertAdjacentHTML insertAdjacentText insertBefore isDefaultNamespace isEqualNode isSameNode lookupNamespaceURI lookupPrefix matches normalize onPointerDown prepend querySelector querySelectorAll releasePointerCapture remove removeAttribute removeAttributeNode removeAttributeNS removeChild removeEventListener replaceChild replaceChildren replaceWith requestFullscreen requestPointerLock scroll scrollBy scrollIntoView scrollTo setAttribute setAttributeNode setAttributeNodeNS setAttributeNS setHTMLUnsafe setPointerCapture showMenu showPopover toggleAttribute togglePopover upgradeProperty webkitMatchesSelector

Prompts

Selection

Undo

Virtual Keyboard

Accessing and changing the content

  • get errors(): readonly LatexSyntaxError[]
  • Return an array of LaTeX syntax errors, if any.

    Returns readonly LatexSyntaxError[]

  • get expression(): any
  • If the Compute Engine library is available, return a boxed MathJSON expression representing the value of the mathfield.

    To load the Compute Engine library, use:

    import 'https://unpkg.com/@cortex-js/compute-engine?module';
    

    Returns any

  • set expression(mathJson): void
  • Parameters

    • mathJson: any

    Returns void

  • get value(): string
  • The content of the mathfield as a LaTeX expression.

    document.querySelector('mf').value = '\\frac{1}{\\pi}'
    

    Returns string

  • set value(value): void
  • Parameters

    • value: string

    Returns void

  • Parameters

    Returns void

  • Parameters

    Returns string

  • Return the value of the mathfield from start to end

    Parameters

    Returns string

  • Return the value of the mathfield in range

    Parameters

    Returns string

  • Internal

    Parameters

    Returns string

  • Parameters

    Returns boolean

  • Parameters

    Returns "some" | "all" | "none"

  • Parameters

    Returns void

Customization

mathVirtualKeyboardPolicy: string
  • get backgroundColorMap(): ((name: string) => undefined | string)
  • Returns ((name: string) => undefined | string)

      • (name): undefined | string
      • Parameters

        • name: string

        Returns undefined | string

  • set backgroundColorMap(value): void
  • Parameters

    • value: ((name: string) => undefined | string)
        • (name): undefined | string
        • Parameters

          • name: string

          Returns undefined | string

    Returns void

  • get colorMap(): ((name: string) => undefined | string)
  • Returns ((name: string) => undefined | string)

      • (name): undefined | string
      • Parameters

        • name: string

        Returns undefined | string

  • set colorMap(value): void
  • Parameters

    • value: ((name: string) => undefined | string)
        • (name): undefined | string
        • Parameters

          • name: string

          Returns undefined | string

    Returns void

  • get defaultMode(): "text" | "math" | "inline-math"
  • Returns "text" | "math" | "inline-math"

  • set defaultMode(value): void
  • Parameters

    • value: "text" | "math" | "inline-math"

    Returns void

  • get environmentPopoverPolicy(): "auto" | "off" | "on"
  • Returns "auto" | "off" | "on"

  • set environmentPopoverPolicy(value): void
  • Parameters

    • value: "auto" | "off" | "on"

    Returns void

  • get inlineShortcuts(): Readonly<InlineShortcutDefinitions>
  • Returns Readonly<InlineShortcutDefinitions>

  • set inlineShortcuts(value): void
  • Parameters

    Returns void

  • get inlineShortcutTimeout(): number
  • Returns number

  • set inlineShortcutTimeout(value): void
  • Parameters

    • value: number

    Returns void

  • get keybindings(): readonly Keybinding[]
  • Returns readonly Keybinding[]

  • set keybindings(value): void
  • Parameters

    Returns void

  • get letterShapeStyle():
        | "auto"
        | "tex"
        | "iso"
        | "french"
        | "upright"
  • Returns
        | "auto"
        | "tex"
        | "iso"
        | "french"
        | "upright"

  • set letterShapeStyle(value): void
  • Parameters

    • value:
          | "auto"
          | "tex"
          | "iso"
          | "french"
          | "upright"

    Returns void

  • get macros(): Readonly<MacroDictionary>
  • Returns Readonly<MacroDictionary>

  • set macros(value): void
  • Parameters

    Returns void

  • get mathModeSpace(): string
  • Returns string

  • set mathModeSpace(value): void
  • Parameters

    • value: string

    Returns void

  • Returns readonly MenuItem[]

  • Parameters

    Returns void

  • get minFontScale(): number
  • Returns number

  • set minFontScale(value): void
  • Parameters

    • value: number

    Returns void

  • get placeholderSymbol(): string
  • Returns string

  • set placeholderSymbol(value): void
  • Parameters

    • value: string

    Returns void

  • get popoverPolicy(): "auto" | "off"
  • Returns "auto" | "off"

  • set popoverPolicy(value): void
  • Parameters

    • value: "auto" | "off"

    Returns void

  • get registers(): Readonly<Registers>
  • Returns Readonly<Registers>

  • set registers(value): void
  • Parameters

    Returns void

  • get removeExtraneousParentheses(): boolean
  • Returns boolean

  • set removeExtraneousParentheses(value): void
  • Parameters

    • value: boolean

    Returns void

  • get scriptDepth(): number | [number, number]
  • Returns number | [number, number]

  • set scriptDepth(value): void
  • Parameters

    • value: number | [number, number]

    Returns void

  • get smartFence(): boolean
  • Returns boolean

  • set smartFence(value): void
  • Parameters

    • value: boolean

    Returns void

  • get smartMode(): boolean
  • Returns boolean

  • set smartMode(value): void
  • Parameters

    • value: boolean

    Returns void

  • get smartSuperscript(): boolean
  • Returns boolean

  • set smartSuperscript(value): void
  • Parameters

    • value: boolean

    Returns void

Focus

  • Remove the focus from the mathfield (will no longer respond to keyboard input).

    Returns void

  • Sets the focus to the mathfield (will respond to keyboard input).

    Returns void

  • Returns boolean

Hooks

  • get onExport(): ((from: Mathfield, latex: string, range: Range) => string)
  • Returns ((from: Mathfield, latex: string, range: Range) => string)

      • (from, latex, range): string
      • Parameters

        Returns string

  • set onExport(value): void
  • Parameters

    • value: ((from: Mathfield, latex: string, range: Range) => string)
        • (from, latex, range): string
        • Parameters

          Returns string

    Returns void

  • get onInlineShortcut(): ((sender: Mathfield, symbol: string) => string)
  • Returns ((sender: Mathfield, symbol: string) => string)

      • (sender, symbol): string
      • Parameters

        Returns string

  • set onInlineShortcut(value): void
  • Parameters

    • value: ((sender: Mathfield, symbol: string) => string)
        • (sender, symbol): string
        • Parameters

          Returns string

    Returns void

  • get onScrollIntoView(): null | ((sender: Mathfield) => void)
  • Returns null | ((sender: Mathfield) => void)

  • set onScrollIntoView(value): void
  • Parameters

    Returns void

Other

accessKey: string
accessKeyLabel: string
ariaAtomic: null | string
ariaAutoComplete: null | string
ariaBrailleLabel: null | string
ariaBrailleRoleDescription: null | string
ariaBusy: null | string
ariaChecked: null | string
ariaColCount: null | string
ariaColIndex: null | string
ariaColIndexText: null | string
ariaColSpan: null | string
ariaCurrent: null | string
ariaDescription: null | string
ariaDisabled: null | string
ariaExpanded: null | string
ariaHasPopup: null | string
ariaHidden: null | string
ariaInvalid: null | string
ariaKeyShortcuts: null | string
ariaLabel: null | string
ariaLevel: null | string
ariaLive: null | string
ariaModal: null | string
ariaMultiLine: null | string
ariaMultiSelectable: null | string
ariaOrientation: null | string
ariaPlaceholder: null | string
ariaPosInSet: null | string
ariaPressed: null | string
ariaReadOnly: null | string
ariaRelevant: null | string
ariaRequired: null | string
ariaRoleDescription: null | string
ariaRowCount: null | string
ariaRowIndex: null | string
ariaRowIndexText: null | string
ariaRowSpan: null | string
ariaSelected: null | string
ariaSetSize: null | string
ariaSort: null | string
ariaValueMax: null | string
ariaValueMin: null | string
ariaValueNow: null | string
ariaValueText: null | string
assignedSlot: null | HTMLSlotElement
ATTRIBUTE_NODE
attributes: NamedNodeMap
attributeStyleMap: StylePropertyMap
autocapitalize: string
autofocus: boolean
baseURI: string

Returns node's node document's document base URL.

MDN Reference

CDATA_SECTION_NODE

node is a CDATASection node.

childElementCount: number
childNodes: NodeListOf<ChildNode>

Returns the children.

MDN Reference

children: HTMLCollection

Returns the child elements.

MDN Reference

className: string

Returns the value of element's class content attribute. Can be set to change it.

MDN Reference

clientHeight: number
clientLeft: number
clientTop: number
clientWidth: number
COMMENT_NODE

node is a Comment node.

contentEditable: string
currentCSSZoom: number
dataset: DOMStringMap
dir: string
DOCUMENT_FRAGMENT_NODE

node is a DocumentFragment node.

DOCUMENT_NODE

node is a document.

DOCUMENT_POSITION_CONTAINED_BY

Set when other is a descendant of node.

DOCUMENT_POSITION_CONTAINS

Set when other is an ancestor of node.

DOCUMENT_POSITION_DISCONNECTED

Set when node and other are not in the same tree.

DOCUMENT_POSITION_FOLLOWING

Set when other is following node.

DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
DOCUMENT_POSITION_PRECEDING

Set when other is preceding node.

DOCUMENT_TYPE_NODE

node is a doctype.

draggable: boolean
ELEMENT_NODE

node is an element.

enterKeyHint: string
ENTITY_NODE
ENTITY_REFERENCE_NODE
firstChild: null | ChildNode

Returns the first child.

MDN Reference

firstElementChild: null | Element

Returns the first child that is an element, and null otherwise.

MDN Reference

hidden: boolean
id: string

Returns the value of element's id content attribute. Can be set to change it.

MDN Reference

inert: boolean
innerHTML: string
innerText: string
inputMode: string
isConnected: boolean

Returns true if node is connected and false otherwise.

MDN Reference

isContentEditable: boolean
lang: string
lastChild: null | ChildNode

Returns the last child.

MDN Reference

lastElementChild: null | Element

Returns the last child that is an element, and null otherwise.

MDN Reference

localName: string

Returns the local name.

MDN Reference

namespaceURI: null | string

Returns the namespace.

MDN Reference

nextElementSibling: null | Element

Returns the first following sibling that is an element, and null otherwise.

MDN Reference

nextSibling: null | ChildNode

Returns the next sibling.

MDN Reference

nodeName: string

Returns a string appropriate for the type of node.

MDN Reference

nodeType: number

Returns the type of node.

MDN Reference

nodeValue: null | string
nonce?: string
NOTATION_NODE
offsetHeight: number
offsetLeft: number
offsetParent: null | Element
offsetTop: number
offsetWidth: number
onabort: null | ((this: GlobalEventHandlers, ev: UIEvent) => any)

Fires when the user aborts the download.

The event.

MDN Reference

onanimationcancel: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
onanimationend: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
onanimationiteration: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
onanimationstart: null | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
onauxclick: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)
onbeforeinput: null | ((this: GlobalEventHandlers, ev: InputEvent) => any)
onbeforetoggle: null | ((this: GlobalEventHandlers, ev: Event) => any)
onblur: null | ((this: GlobalEventHandlers, ev: FocusEvent) => any)

Fires when the object loses the input focus.

The focus event.

MDN Reference

oncancel: null | ((this: GlobalEventHandlers, ev: Event) => any)
oncanplay: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when playback is possible, but would require further buffering.

The event.

MDN Reference

oncanplaythrough: null | ((this: GlobalEventHandlers, ev: Event) => any)
onchange: null | ((this: GlobalEventHandlers, ev: Event) => any)

Fires when the contents of the object or selection have changed.

The event.

MDN Reference

onclick: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user clicks the left mouse button on the object

The mouse event.

MDN Reference

onclose: null | ((this: GlobalEventHandlers, ev: Event) => any)
oncontextlost: null | ((this: GlobalEventHandlers, ev: Event) => any)
oncontextmenu: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user clicks the right mouse button in the client area, opening the context menu.

The mouse event.

MDN Reference

oncontextrestored: null | ((this: GlobalEventHandlers, ev: Event) => any)
oncopy: null | ((this: GlobalEventHandlers, ev: ClipboardEvent) => any)
oncuechange: null | ((this: GlobalEventHandlers, ev: Event) => any)
oncut: null | ((this: GlobalEventHandlers, ev: ClipboardEvent) => any)
ondblclick: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user double-clicks the object.

The mouse event.

MDN Reference

ondrag: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)

Fires on the source object continuously during a drag operation.

The event.

MDN Reference

ondragend: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)

Fires on the source object when the user releases the mouse at the close of a drag operation.

The event.

MDN Reference

ondragenter: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)

Fires on the target element when the user drags the object to a valid drop target.

The drag event.

MDN Reference

ondragleave: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)

Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.

The drag event.

MDN Reference

ondragover: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)

Fires on the target element continuously while the user drags the object over a valid drop target.

The event.

MDN Reference

ondragstart: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)

Fires on the source object when the user starts to drag a text selection or selected object.

The event.

MDN Reference

ondrop: null | ((this: GlobalEventHandlers, ev: DragEvent) => any)
ondurationchange: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the duration attribute is updated.

The event.

MDN Reference

onemptied: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the media element is reset to its initial state.

The event.

MDN Reference

onended: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the end of playback is reached.

The event

MDN Reference

Fires when an error occurs during object loading.

The event.

MDN Reference

onfocus: null | ((this: GlobalEventHandlers, ev: FocusEvent) => any)

Fires when the object receives focus.

The event.

MDN Reference

onformdata: null | ((this: GlobalEventHandlers, ev: FormDataEvent) => any)
onfullscreenchange: null | ((this: Element, ev: Event) => any)
onfullscreenerror: null | ((this: Element, ev: Event) => any)
ongotpointercapture: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
oninput: null | ((this: GlobalEventHandlers, ev: Event) => any)
oninvalid: null | ((this: GlobalEventHandlers, ev: Event) => any)
onkeydown: null | ((this: GlobalEventHandlers, ev: KeyboardEvent) => any)

Fires when the user presses a key.

The keyboard event

MDN Reference

onkeypress: null | ((this: GlobalEventHandlers, ev: KeyboardEvent) => any)

Fires when the user presses an alphanumeric key.

The event.

MDN Reference

onkeyup: null | ((this: GlobalEventHandlers, ev: KeyboardEvent) => any)

Fires when the user releases a key.

The keyboard event

MDN Reference

onload: null | ((this: GlobalEventHandlers, ev: Event) => any)

Fires immediately after the browser loads the object.

The event.

MDN Reference

onloadeddata: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when media data is loaded at the current playback position.

The event.

MDN Reference

onloadedmetadata: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the duration and dimensions of the media have been determined.

The event.

MDN Reference

onloadstart: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when Internet Explorer begins looking for media data.

The event.

MDN Reference

onlostpointercapture: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onmousedown: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user clicks the object with either mouse button.

The mouse event.

MDN Reference

onmouseenter: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)
onmouseleave: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)
onmousemove: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user moves the mouse over the object.

The mouse event.

MDN Reference

onmouseout: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user moves the mouse pointer outside the boundaries of the object.

The mouse event.

MDN Reference

onmouseover: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user moves the mouse pointer into the object.

The mouse event.

MDN Reference

onmouseup: null | ((this: GlobalEventHandlers, ev: MouseEvent) => any)

Fires when the user releases a mouse button while the mouse is over the object.

The mouse event.

MDN Reference

onpaste: null | ((this: GlobalEventHandlers, ev: ClipboardEvent) => any)
onpause: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when playback is paused.

The event.

MDN Reference

onplay: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the play method is requested.

The event.

MDN Reference

onplaying: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the audio or video has started playing.

The event.

MDN Reference

onpointercancel: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointerdown: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointerenter: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointerleave: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointermove: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointerout: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointerover: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onpointerup: null | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
onprogress: null | ((this: GlobalEventHandlers, ev: ProgressEvent<EventTarget>) => any)

Occurs to indicate progress while downloading media data.

The event.

MDN Reference

onratechange: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the playback rate is increased or decreased.

The event.

MDN Reference

onreset: null | ((this: GlobalEventHandlers, ev: Event) => any)

Fires when the user resets a form.

The event.

MDN Reference

onresize: null | ((this: GlobalEventHandlers, ev: UIEvent) => any)
onscroll: null | ((this: GlobalEventHandlers, ev: Event) => any)

Fires when the user repositions the scroll box in the scroll bar on the object.

The event.

MDN Reference

onscrollend: null | ((this: GlobalEventHandlers, ev: Event) => any)
onsecuritypolicyviolation: null | ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any)
onseeked: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the seek operation ends.

The event.

MDN Reference

onseeking: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the current playback position is moved.

The event.

MDN Reference

onselect: null | ((this: GlobalEventHandlers, ev: Event) => any)

Fires when the current selection changes.

The event.

MDN Reference

onselectionchange: null | ((this: GlobalEventHandlers, ev: Event) => any)
onselectstart: null | ((this: GlobalEventHandlers, ev: Event) => any)
onslotchange: null | ((this: GlobalEventHandlers, ev: Event) => any)
onstalled: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the download has stopped.

The event.

MDN Reference

onsubmit: null | ((this: GlobalEventHandlers, ev: SubmitEvent) => any)
onsuspend: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs if the load operation has been intentionally halted.

The event.

MDN Reference

ontimeupdate: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs to indicate the current playback position.

The event.

MDN Reference

ontoggle: null | ((this: GlobalEventHandlers, ev: Event) => any)
ontouchcancel?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any)
ontouchend?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any)
ontouchmove?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any)
ontouchstart?: null | ((this: GlobalEventHandlers, ev: TouchEvent) => any)
ontransitioncancel: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
ontransitionend: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
ontransitionrun: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
ontransitionstart: null | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
onvolumechange: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when the volume is changed, or playback is muted or unmuted.

The event.

MDN Reference

onwaiting: null | ((this: GlobalEventHandlers, ev: Event) => any)

Occurs when playback stops because the next frame of a video resource is not available.

The event.

MDN Reference

onwebkitanimationend: null | ((this: GlobalEventHandlers, ev: Event) => any)

This is a legacy alias of onanimationend.

MDN Reference

onwebkitanimationiteration: null | ((this: GlobalEventHandlers, ev: Event) => any)

This is a legacy alias of onanimationiteration.

MDN Reference

onwebkitanimationstart: null | ((this: GlobalEventHandlers, ev: Event) => any)

This is a legacy alias of onanimationstart.

MDN Reference

onwebkittransitionend: null | ((this: GlobalEventHandlers, ev: Event) => any)

This is a legacy alias of ontransitionend.

MDN Reference

onwheel: null | ((this: GlobalEventHandlers, ev: WheelEvent) => any)
outerHTML: string
outerText: string
ownerDocument: Document

Returns the node document. Returns null for documents.

MDN Reference

parentElement: null | HTMLElement

Returns the parent element.

MDN Reference

parentNode: null | ParentNode

Returns the parent.

MDN Reference

popover: null | string
prefix: null | string

Returns the namespace prefix.

MDN Reference

previousElementSibling: null | Element

Returns the first preceding sibling that is an element, and null otherwise.

MDN Reference

previousSibling: null | ChildNode

Returns the previous sibling.

MDN Reference

PROCESSING_INSTRUCTION_NODE

node is a ProcessingInstruction node.

role: null | string
scrollHeight: number
scrollLeft: number
scrollTop: number
scrollWidth: number
shadowRoot: null | ShadowRoot

Returns element's shadow root, if any, and if shadow root's mode is "open", and null otherwise.

MDN Reference

slot: string

Returns the value of element's slot content attribute. Can be set to change it.

MDN Reference

spellcheck: boolean
tabIndex: number
tagName: string

Returns the HTML-uppercased qualified name.

MDN Reference

TEXT_NODE

node is a Text node.

textContent: null | string
title: string
translate: boolean
triggerBtn: HTMLButtonElement
virtualKeyboard: VirtualKeyboard
writingSuggestions: string
  • get classList(): DOMTokenList
  • Allows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.

    MDN Reference

    Returns DOMTokenList

  • set classList(value): void
  • Parameters

    • value: string

    Returns void

  • get computeEngine(): never
  • Internal

    Returns never

  • set computeEngine(_val): void
  • Internal

    Parameters

    • _val: unknown

    Returns void

  • get decimalSeparator(): never
  • Internal

    Returns never

  • set decimalSeparator(_val): void
  • Internal

    Parameters

    • _val: unknown

    Returns void

  • get disabled(): boolean
  • Returns boolean

  • set disabled(value): void
  • Parameters

    • value: boolean

    Returns void

  • get fontsDirectory(): never
  • Internal

    Returns never

  • set fontsDirectory(_value): void
  • Internal

    Parameters

    • _value: unknown

    Returns void

  • get form(): null | HTMLFormElement
  • Returns null | HTMLFormElement

  • get isSelectionEditable(): boolean
  • Returns boolean

  • get locale(): never
  • Internal

    Returns never

  • set locale(_value): void
  • Internal

    Parameters

    • _value: unknown

    Returns void

  • get mathVirtualKeyboard(): never
  • Internal

    Returns never

  • get mode(): ParseMode
  • Returns ParseMode

  • set mode(value): void
  • Parameters

    Returns void

  • get name(): string
  • Returns string

  • get part(): DOMTokenList
  • Returns DOMTokenList

  • set part(value): void
  • Parameters

    • value: string

    Returns void

  • get readonly(): boolean
  • Returns boolean

  • set readonly(value): void
  • Parameters

    • value: boolean

    Returns void

  • get readOnly(): boolean
  • Returns boolean

  • set readOnly(value): void
  • Parameters

    • value: boolean

    Returns void

  • get soundsDirectory(): never
  • Internal

    Returns never

  • set soundsDirectory(_value): void
  • Internal

    Parameters

    • _value: unknown

    Returns void

  • get strings(): never
  • Internal

    Returns never

  • set strings(_val): void
  • Internal

    Parameters

    • _val: unknown

    Returns void

  • get style(): CSSStyleDeclaration
  • Returns CSSStyleDeclaration

  • set style(cssText): void
  • Parameters

    • cssText: string

    Returns void

  • get type(): string
  • Returns string

  • Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.

    The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.

    When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.

    When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in § 2.8 Observing event listeners.

    When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.

    If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.

    The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.

    MDN Reference

    Type Parameters

    • K extends keyof HTMLElementEventMap

    Parameters

    Returns void

  • Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.

    The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.

    When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.

    When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in § 2.8 Observing event listeners.

    When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.

    If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.

    The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.

    MDN Reference

    Parameters

    Returns void

  • Inserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.

    Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

    MDN Reference

    Parameters

    • Rest...nodes: (string | Node)[]

    Returns void

  • Inserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.

    Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

    MDN Reference

    Parameters

    • Rest...nodes: (string | Node)[]

    Returns void

  • Internal

    Custom elements lifecycle hooks

    Parameters

    • name: string
    • oldValue: unknown
    • newValue: unknown

    Returns void

  • Inserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.

    Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

    MDN Reference

    Parameters

    • Rest...nodes: (string | Node)[]

    Returns void

  • Returns a copy of node. If deep is true, the copy also includes the node's descendants.

    MDN Reference

    Parameters

    • Optionalsubtree: boolean

    Returns Node

  • Returns a bitmask indicating the position of other relative to node.

    MDN Reference

    Parameters

    Returns number

  • Internal

    Custom elements lifecycle hooks

    Returns void

  • Returns true if other is an inclusive descendant of node, and false otherwise.

    MDN Reference

    Parameters

    Returns boolean

  • Internal

    Custom elements lifecycle hooks

    Returns void

  • Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.

    MDN Reference

    Parameters

    Returns boolean

  • Parameters

    Returns boolean

  • Returns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.

    MDN Reference

    Parameters

    • qualifiedName: string

    Returns null | string

  • Returns the qualified names of all element's attributes. Can contain duplicates.

    MDN Reference

    Returns string[]

  • Parameters

    • namespace: null | string
    • localName: string

    Returns null | Attr

  • Returns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.

    MDN Reference

    Parameters

    • namespace: null | string
    • localName: string

    Returns null | string

  • Returns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.

    MDN Reference

    Parameters

    • classNames: string

    Returns HTMLCollectionOf<Element>

  • Parameters

    • namespaceURI: "http://www.w3.org/1999/xhtml"
    • localName: string

    Returns HTMLCollectionOf<HTMLElement>

  • Parameters

    • namespaceURI: "http://www.w3.org/2000/svg"
    • localName: string

    Returns HTMLCollectionOf<SVGElement>

  • Parameters

    • namespaceURI: "http://www.w3.org/1998/Math/MathML"
    • localName: string

    Returns HTMLCollectionOf<MathMLElement>

  • Parameters

    • namespace: null | string
    • localName: string

    Returns HTMLCollectionOf<Element>

  • Parameters

    • id: string

    Returns [undefined | "correct" | "incorrect", boolean]

  • Internal

    Parameters

    Returns void

  • Returns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.

    MDN Reference

    Parameters

    • qualifiedName: string

    Returns boolean

  • Returns true if element has an attribute whose namespace is namespace and local name is localName.

    MDN Reference

    Parameters

    • namespace: null | string
    • localName: string

    Returns boolean

  • Returns true if element has attributes, and false otherwise.

    MDN Reference

    Returns boolean

  • Returns whether node has children.

    MDN Reference

    Returns boolean

  • Parameters

    • pointerId: number

    Returns boolean

  • Parameters

    • namespace: null | string

    Returns boolean

  • Returns whether node and otherNode have the same properties.

    MDN Reference

    Parameters

    • otherNode: null | Node

    Returns boolean

  • Parameters

    • otherNode: null | Node

    Returns boolean

  • Parameters

    • prefix: null | string

    Returns null | string

  • Parameters

    • namespace: null | string

    Returns null | string

  • Returns true if matching selectors against element's root yields element, and false otherwise.

    MDN Reference

    Parameters

    • selectors: string

    Returns boolean

  • Removes empty exclusive Text nodes and concatenates the data of remaining contiguous exclusive Text nodes into the first of their nodes.

    MDN Reference

    Returns void

  • Internal

    Returns void

  • Inserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.

    Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

    MDN Reference

    Parameters

    • Rest...nodes: (string | Node)[]

    Returns void

  • Removes node.

    MDN Reference

    Returns void

  • Removes element's first attribute whose qualified name is qualifiedName.

    MDN Reference

    Parameters

    • qualifiedName: string

    Returns void

  • Removes element's attribute whose namespace is namespace and local name is localName.

    MDN Reference

    Parameters

    • namespace: null | string
    • localName: string

    Returns void

  • Removes the event listener in target's event listener list with the same type, callback, and options.

    MDN Reference

    Type Parameters

    • K extends keyof HTMLElementEventMap

    Parameters

    Returns void

  • Removes the event listener in target's event listener list with the same type, callback, and options.

    MDN Reference

    Parameters

    Returns void

  • Replace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.

    Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

    MDN Reference

    Parameters

    • Rest...nodes: (string | Node)[]

    Returns void

  • Replaces node with nodes, while replacing strings in nodes with equivalent Text nodes.

    Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

    MDN Reference

    Parameters

    • Rest...nodes: (string | Node)[]

    Returns void

  • Displays element fullscreen and resolves promise when done.

    When supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to "show", navigation simplicity is preferred over screen space, and if set to "hide", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value "auto" indicates no application preference.

    MDN Reference

    Parameters

    Returns Promise<void>

  • Parameters

    Returns void

  • Parameters

    • x: number
    • y: number

    Returns void

  • Parameters

    Returns void

  • Parameters

    • x: number
    • y: number

    Returns void

  • Parameters

    Returns void

  • Parameters

    • x: number
    • y: number

    Returns void

  • Sets the value of element's first attribute whose qualified name is qualifiedName to value.

    MDN Reference

    Parameters

    • qualifiedName: string
    • value: string

    Returns void

  • Sets the value of element's attribute whose namespace is namespace and local name is localName to value.

    MDN Reference

    Parameters

    • namespace: null | string
    • qualifiedName: string
    • value: string

    Returns void

  • Parameters

    • html: string

    Returns void

  • Parameters

    • _: {
          location: {
              x: number;
              y: number;
          };
          modifiers: KeyboardModifiers;
      }
      • location: {
            x: number;
            y: number;
        }
        • x: number
        • y: number
      • modifiers: KeyboardModifiers

    Returns boolean

  • If force is not given, "toggles" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.

    Returns true if qualifiedName is now present, and false otherwise.

    MDN Reference

    Parameters

    • qualifiedName: string
    • Optionalforce: boolean

    Returns boolean

  • Parameters

    • Optionaloptions: boolean

    Returns boolean

  • Internal

    Private lifecycle hooks

    Parameters

    • prop: string

    Returns void

  • Parameters

    • selectors: string

    Returns boolean

    This is a legacy alias of matches.

    MDN Reference

Prompts

  • Return the selection range for the specified prompt.

    This can be used for example to select the content of the prompt.

    mf.selection = mf.getPromptRange('my-prompt-id');
    

    Parameters

    • id: string

    Returns null | Range

  • Return the id of the prompts matching the filter.

    Parameters

    • Optionalfilter: {
          correctness?: "undefined" | "correct" | "incorrect";
          id?: string;
          locked?: boolean;
      }
      • Optionalcorrectness?: "undefined" | "correct" | "incorrect"
      • Optionalid?: string
      • Optionallocked?: boolean

    Returns string[]

  • Parameters

    Returns string

  • Parameters

    • id: string
    • state:
          | undefined
          | "undefined"
          | "correct"
          | "incorrect"
    • Optionallocked: boolean

    Returns void

  • Parameters

    Returns void

Selection

  • get caretPoint(): null | Readonly<{
        x: number;
        y: number;
    }>
  • Returns null | Readonly<{
        x: number;
        y: number;
    }>

  • set caretPoint(point): void
  • Parameters

    • point: null | {
          x: number;
          y: number;
      }

    Returns void

  • get lastOffset(): number
  • The last valid offset.

    Returns number

  • get position(): number
  • The position of the caret/insertion point, from 0 to lastOffset.

    Returns number

  • set position(offset): void
  • Parameters

    • offset: number

    Returns void

  • get selection(): Readonly<Selection>
  • An array of ranges representing the selection.

    It is guaranteed there will be at least one element. If a discontinuous selection is present, the result will include more than one element.

    Returns Readonly<Selection>

  • set selection(sel): void
  • Parameters

    Returns void

  • get selectionIsCollapsed(): boolean
  • Returns boolean

  • The depth of an offset represent the depth in the expression tree.

    Parameters

    • offset: number

    Returns number

  • The bounding rect of the atom at offset

    Parameters

    • offset: number

    Returns null | DOMRect

  • The offset closest to the location (x, y) in viewport coordinate.

    bias: if 0, the vertical midline is considered to the left or right sibling. If -1, the left sibling is favored, if +1, the right sibling is favored.

    Parameters

    • x: number
    • y: number
    • Optionaloptions: {
          bias?: 0 | 1 | -1;
      }
      • Optionalbias?: 0 | 1 | -1

    Returns number

  • Select the content of the mathfield.

    Returns void

  • x and y are in viewport coordinates.

    Return true if the location of the point is a valid caret location.

    See also [[caretPoint]]

    Parameters

    • x: number
    • y: number

    Returns boolean

Undo

  • Return whether there are redoable items

    Returns boolean

  • Return whether there are undoable items

    Returns boolean

  • Reset the undo stack

    Returns void

Virtual Keyboard

mathVirtualKeyboardPolicy: string
  • get virtualKeyboardTargetOrigin(): string
  • Returns string

  • set virtualKeyboardTargetOrigin(value): void
  • Parameters

    • value: string

    Returns void