【发布时间】:2013-08-21 18:59:51
【问题描述】:
所以我基本上是在运行中向 DOM 添加一些元素。我可以在它们存在之前对它们使用 .addClass 之类的方法,并且该类与元素一起附加到 DOM,但是当我使用 .data() 方法添加数据属性时,数据不会附加到DOM 与元素。我在这里遗漏了什么还是我真的必须等到元素存在于 DOM 中才能向其中添加数据?
PS。使用 jquery 1.9.1
HERES A FIDDLE FOR YOU TO PLAY WITH
JS
var widget = $("<div>");
widget.addClass("banana");
widget.data('color', 'brown');
widget.appendTo('#container');
HTML
<div id="container">
</div>
那里有一些不错的 CSS,因此您知道在哪里单击以检查并查看未(或希望)添加的数据属性。
我的预期结果是
<div id="container">
<div class="banana" data-color="brown"></div>
</div>
干杯。
【问题讨论】:
-
你确定吗?你试过记录吗?
-
@RicardoLohmann 当我检查元素时,我没有看到在 DOM 中添加到它的数据
-
@RicardoLohmann 但也许这只是一个奇怪的 jsfiddle 怪癖?
-
dataattr 不用于随意创建节点。它只是用 DOM 证实了对象数据。如果您想明确设置某些内容,则必须使用attr。祝你好运!
标签: jquery html dom html5-canvas