下面的代码有何不同?
或者两者是相同的吗?
以下是两段代码之间的区别:
$("demo").data("title");
同时,
$("demo").attr("data-title");
或者两者是相同的吗?
如果从处理data-*属性的角度来看这两个函数,它们非常相似。在这种情况下,你可以将data()函数视为attr()函数的快捷方式。
但是使用data()函数,你可以做一些更复杂的事情。你不仅可以保存简单的字符串或通常作为html属性附加的一些文本,还可以保存一些自定义对象。例如,你可以像这样保存带有数据的对象:
// Attaching custom object to DOM element
var someObj = { id: 1, name: "whatever" };
$("demo").data("someObj", someObj);
// Receiving previously attached object from DOM element
var someObjFromData = $("demo").data("someObj");