HTML参考手册
属性 | Attributes
数据 | data-* (attribute)
data-*全局属性构成一类称为自定义数据属性的属性,允许通过脚本在HTML和其DOM表示之间交换专有信息。所有这些自定义数据都可以通过属性设置的元素的HTMLElement
接口来访问。 HTMLElement.dataset
属性可以访问它们。
*
可以使用遵循xml名称生产规则的任何名称来被替换,并具有以下限制:
- 该名称不能以
xml
开头,无论这些字母用于什么情况;
- 该名称不能包含任何分号 (
U+003A
);
- 该名称不能包含A至Z的大写字母。
注意,HTMLElement.dataset
属性是一个StringMap
,并且自定义数据属性data-test-value可以通过HTMLElement.dataset.testValue
( 或者是HTMLElement.dataset["testValue"]
) 来访问,任何破折号(U+002D
) 都会被下个字母的大写替代(驼峰拼写)。
示例
通过添加data-*属性,即使是普通的 HTML 元素也能变成相当复杂且强大的编程对象。例如,在游戏里的太空船 "sprite"可以是一个带有class属性和几个data-*属性的简单<img>
元素:
<img class="spaceship cruiserX3" src="shipX3.png"
data-ship-id="324" data-weapons="laserI laserII" data-shields="72%"
data-x="414354" data-y="85160" data-z="31940"
onclick="spaceships[this.dataset.shipId].blasted()">
</img>
(详见这里)
规范
规范 |
状态 |
评论 |
---|---|---|
HTML Living Standard该规范中'data- *'的定义。 |
生活水平 |
最新的快照,HTML 5.1没有变化 |
HTML 5.1该规范中'data- *'的定义。 |
建议 |
HTML Living Standard的快照,HTML5没有改变 |
HTML5该规范中'data- *'的定义。 |
建议 |
HTML Living Standard的快照,最初的定义。 |
浏览器兼容性
Feature |
Chrome |
Firefox (Gecko) |
Internet Explorer |
Opera |
Safari |
---|---|---|---|---|---|
Basic support |
(Yes) |
6 (6) |
(Yes) |
(Yes) |
(Yes) |
Feature |
Android |
Chrome for Android |
Firefox Mobile (Gecko) |
IE Mobile |
Opera Mobile |
Safari Mobile |
---|---|---|---|---|---|---|
Basic support |
(Yes) |
6.0 (6) |
(Yes) |
(Yes) |
(Yes) |
(Yes) |
属性 | Attributes相关
超文本标记语言,它通过标记符号来标记要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标记符,可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等)。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出错部位。但需要注意的是,对于不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。