ggd*_*gdx 20 javascript jquery
这看起来很简单,但我不明白为什么它不起作用.选择器是正确的但是div .faqContent不是用data-height属性更新的.
$('.faqItem .faqContent').each(function(){
var h = $(this).height();
$(this).data('height',h);
});
Run Code Online (Sandbox Code Playgroud)
我检查过这 var h是正确的,它在colsole.log中正确地保持高度.
编辑 绝对没有冲突,控制台显示没有错误.
T.J*_*der 66
这个data功能让很多人感到困惑,不仅仅是你.:-)
data管理jQuery的元素内部数据对象,而不是 data-*属性.data仅使用data-*属性来设置初始值.它永远不会在元素上设置 data-*属性.
如果要实际设置data-*属性,请使用attr:
$(this).attr("data-height", h);
Run Code Online (Sandbox Code Playgroud)
但是如果您只是想将此信息用于将来使用,那么data就好了,不要指望在DOM检查器中看到它,因为jQuery不会将此信息写入DOM.
Moh*_*dil 28
您将无法在元素检查器中看到它,但它在那里,因为jquery在内部设置了data属性.
尝试 console.log($(this).data('height'));