data-*

data-* MathML 属性被称为自定义数据属性。它们允许 MathML 标记及其生成的 DOM 共享标准属性无法承载的信息,通常用于脚本目的。其自定义数据可通过属性所属元素的 MathMLElement 接口,通过 MathMLElement.dataset 属性进行访问。

* 可以被 XML 名称规则允许的任何字符替换,但有以下限制:

  • 不能以 xml 开头。
  • 不能包含分号 (;, U+003A)。
  • 不能包含大写字母 A 到 Z。

注意:MathMLElement.dataset 属性是一个 DOMStringMap,它通过 MathMLElement.dataset.testValue 提供 data-test-value 属性。连字符 (-, U+002D) 会被移除,并且紧随其后的字母会转换为大写,从而形成 驼峰式命名格式。

您可以将此属性用于任何 MathML 元素。

示例

html
<math>
  <msup data-formula="euler" data-value="-1">
    <mi>e</mi>
    <mrow><mi>i</mi> <mi>π</mi></mrow>
  </msup>
  <mo>+</mo>
  <mn>1</mn>
  <mo>=</mo>
  <mn>0</mn>
</math>
js
const msupElement = document.querySelector("msup");
console.log(msupElement.dataset.formula); // "euler"
console.log(msupElement.dataset.value); // "-1"

规范

此特性似乎未在任何规范中定义。

浏览器兼容性

另见