jQuery data()vs attr(data)

时间:2012-02-25 14:09:40

标签: jquery

我想知道使用$(element).data({'foo' : 'bar'}) vs $(element).attr({ 'data-foo' : 'bar' })将数据保存到元素之间的区别。在将大量数据保存到元素中时,哪种方法最适合使用?感谢

2 个答案:

答案 0 :(得分:9)

$.data用于关于元素的 存储 信息:

Docs:

  

存储与指定元素关联的任意数据。返回   设定的值。

另一方面,attr用于操纵元素的 属性

根据您的问题,您似乎存储了数据,在这种情况下您应该使用$.data

data-* attributes是HTML5的一项功能

性能

根据{{​​3}}

.data()似乎更加友好

我也觉得它更干净,因为页面来源中的每个人都看不到它。

答案 1 :(得分:1)

我会说数据,因为这就是它的意图。它支持您尝试实现的确切功能类型。 http://api.jquery.com/jQuery.data/