1

如果您尝试使用方法更改数据属性值,data()则不会得到与方法相同的结果attr(data-key, data-value)

例如,我data-hovered=true用来存储元素的一些状态。如果您对element[data-hovered=true]选择器有一些 css 样式,则使用data()方法来分配值truedata-hovered不会生效。只有使用attr()它才会有效果。

那么这两种方法有什么区别呢?

4

1 回答 1

6

.data() 用于在对象中存储数据,但在 HTML5 的“版本”中,它还可以访问元素的 data-* 属性。

但是,它不能改变这些,因为它主要用于将数据存储在对象等中,而不是物理上存储在元素上。

因此 attr() 是更改元素属性值的唯一方法,例如 data-* 属性。

看:

于 2012-09-24T16:52:54.857 回答