我想知道,jquery如何在不添加任何HTML数据属性的情况下将任意数据与任何DOM元素关联起来?
$('#div_id').data('suffix',(count++)) ;我在firebug HTML快照中看不到任何与HTML元素相关联数据属性。
其机制是什么?
虽然在HTML5中不再需要这种数据存储方法,但我仍然不清楚jquery数据存储的实际机制。
发布于 2011-12-07 08:15:34
它向元素添加一个属性,该元素包含一个表示jQuery.cache对象中索引的数字值,如下所示:
$('#footer').data('suffix',"suffix");
jQuery.cache[ $('#footer')[0][jQuery.expando] ].suffix;
//"suffix"我使用"#footer"是因为我在这个页面上运行了代码。请注意,对于也由jQuery绑定了事件的元素,jQuery.cache[index]的对象结构将有所不同。
无论如何,你都不应该在代码中接触它,所以这真的无关紧要。
发布于 2011-12-07 08:16:40
JQuery向DOM元素添加了一个属性,该属性是它用来在内部散列中查找内容的键。
如果在将数据与DOM元素关联之后检查firebug中的DOM元素,您将看到jQueryxxxxxxxx属性
https://stackoverflow.com/questions/8408708
复制相似问题