什么是data-* HTML属性?

10

最近我在一个网站的代码中发现了以下这样一段开头标签:

<script data-ip="93.1xx.3.2x" data-backuri="something.com">

我找不到任何相关信息,这些标签有什么用途吗?


2
这些是数据属性 https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Using_data_attributes,是开发人员用于在视图中存储一些数据的自定义属性。开发人员可能会获取这些值并在脚本中进行某些操作。 - mpallansch
1个回答

14

data-* 属性是自定义的 HTML 属性。

通常,有一些标准的 HTML 属性,例如 stylesrcwidthheightclass 等等,这些属性在浏览器中有特殊含义并被“保留”。

然而,自定义属性通常没有特殊意义,只对应用程序的所有者有特殊含义。它们可以用来简化应用程序的逻辑。

在你的属性名前使用 data- 可确保未来的标准属性不会使用当前的属性。例如,想象一下今天你正在使用一个 sound 属性,但是 HTML 标准添加了一个表示与你原意不同的含义的 sound 属性。如果你使用了 data-sound,你就没问题了,因为不会有冲突。规范指出,未来的标准浏览器属性不会以 data- 开头。

请参阅 jquery get HTML 5 Data Attributes with hyphens and Case Sensitivity 获取有关为什么使用 data-* 属性的一些有用信息。

此外,还可以参见 MDN文档 获取一些有用的信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接