数据绑定DOM元素如何工作?

时间:2011-12-07 00:05:44

标签: javascript jquery

我想知道,jquery如何在不添加任何HTML数据属性的情况下将任意数据与任何DOM元素相关联?

$('#div_id').data('suffix',(count++)) ;

我没有看到任何与firebug HTML快照中的HTML元素关联的数据属性。

机制是什么?

虽然HTML5中不再需要这种数据存储方法,但我还不清楚jquery数据存储的实际机制。

2 个答案:

答案 0 :(得分:5)

它向元素添加一个属性,该属性包含一个数字值,表示jQuery.cache对象中的索引,如下所示:

$('#footer').data('suffix',"suffix");
jQuery.cache[ $('#footer')[0][jQuery.expando] ].suffix;
//"suffix"

我使用"#footer",因为我在此页面上运行了代码。请注意,jQuery.cache[index]的对象结构在由jQuery绑定了它们的事件的元素上会有所不同。

你永远不应该在代码中触摸它,所以它并不重要。

答案 1 :(得分:1)

JQuery为DOM元素添加了一个属性,它是用于在内部哈希中查找内容的键。

如果您在使用firebug中的DOM元素之后检查它,那么您将看到jQueryxxxxxxxx属性

相关问题