[英]creating new elements with html5 data attributes defined in DOM
我想用定义的html5数据属性创建一个新元素,但是它们未在DOM中显示(与使用say .addClass时不同)。 这是预期的行为吗?
这将创建一个没有 data-foo
属性的元素:
-> $("<div>foo</div>").data('foo', 'bar').addClass('class')
=> <div class="class">foo</div>
我不得不在构造函数中声明它
-> $("<div data-foo='bar'>foo</div>").addClass('class')
=> <div class="class" data-foo="bar">foo</div>
.data方法不应该这样做吗?
从这里:
4
。 jQuery数据API从未更改过HTML5 data- *属性。.data()和.removeData()的大多数用法仍然是将数据与内存中的DOM元素关联的原始目的。 每次更改数据时更新DOM属性都会毫无理由地降低速度。 此外,甚至不可能序列化可能附加到DOM元素的所有数据类型,例如函数,对其他DOM元素的引用或自定义JavaScript对象。
规则:要更新或删除HTML5 data- *属性,请使用jQuery的.attr()或.removeAttr()方法。
因此,使用通常的attr
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.