【发布时间】:2012-02-25 14:09:40
【问题描述】:
我想知道使用$(element).data({'foo' : 'bar'}) 和$(element).attr({ 'data-foo' : 'bar' }) 将数据保存到元素之间的区别。当将大量数据保存到元素中时,这两种方法中哪一种最适合使用?谢谢
【问题讨论】:
标签: jquery
我想知道使用$(element).data({'foo' : 'bar'}) 和$(element).attr({ 'data-foo' : 'bar' }) 将数据保存到元素之间的区别。当将大量数据保存到元素中时,这两种方法中哪一种最适合使用?谢谢
【问题讨论】:
标签: jquery
$.data 用于存储关于元素的信息:
存储与指定元素关联的任意数据。退货 设置的值。
另一方面,attr 用于操作元素的属性。
从您的问题来看,您似乎存储了数据,在这种情况下您应该使用$.data。
data-* attributes 是 HTML5 的一个特性
.data() 似乎对性能更加友好
我还发现它更干净,因为它在页面源代码中对每个人都不可见。
【讨论】:
data时,它存储在哪里?它不会显示为元素上的数据属性
$.data 属性不会被添加到元素中,因为它不是用于属性而是用于数据。至于存储,我相信 jQuery 在内部将它存储在某个对象中。
我会说数据,因为这就是它的本意。它支持您尝试实现的确切功能类型。 http://api.jquery.com/jQuery.data/
【讨论】: