这对我来说真的很奇怪。为什么$("element").data(.....);
有效但jQuery.data(....);
不起作用?
http://jsfiddle.net/Rdh2e/6/
根据此处的文档:http://api.jquery.com/jQuery.data/
您还应该能够使用jQuery.data
将数据附加到元素...。
我做错什么了吗?
最佳答案
$.data()期望第一个参数是dom元素引用而不是jQuery包装器对象
element:与数据关联的DOM元素。
jQuery.data($("#kit")[0], "says", "meow");
演示:Fiddle
当传递
$("#kit")
时,它传递的是jQuery包装器对象,而不是dom元素引用,则可以使用索引0
或类似$("#kit").get(0)
的方法来访问jQuery包装器中的第一个元素。