查找每个特定元素的高度并将其设置为它的父元素
Find height of each certain element and set it to it's parent
我正在尝试将 li
元素的高度设置为其父元素的父元素 div
。每个 li:first-child
都根据其内容具有不同的高度。我到目前为止是:
HTML
<div class="somediv">
<ul>
<li class="someli">some content</li>
<li class="someli"></li>
<li class="someli"></li>
</ul>
</div>
<div class="somediv">
<ul>
<li class="someli">some other content</li>
<li class="someli"></li>
<li class="someli"></li>
</ul>
</div>
jQuery
jQuery.each(jQuery('.someli:first-child'), function() {
var height = jQuery(this).height();
alert(height);
jQuery(this).parent().parent().parent().find('.somediv' ).height(height);
});
以上函数会正确提醒每个 li:first-child
的高度,但仅将第二个 li:first-child
的高度设置为所有 .somediv
div。如何强制该函数将每个 li:first-child
的高度仅应用于该特定 li
的父级?
通过 .each()
方法的第二次迭代,您将找到两个 .somediv
元素并将第二个 li:first-child
的高度设置为所有这些元素。你需要使用 .closest()
jQuery.each(jQuery('.someli:first-child'), function() {
var height = jQuery(this).height();
alert(height);
jQuery(this).closest('.somediv' ).height(height);
});
此选择器 jQuery(this).parent().parent().parent()
找到两个 .somediv
元素的父元素,并且使用 .find()
您选择了它们两个
我正在尝试将 li
元素的高度设置为其父元素的父元素 div
。每个 li:first-child
都根据其内容具有不同的高度。我到目前为止是:
HTML
<div class="somediv">
<ul>
<li class="someli">some content</li>
<li class="someli"></li>
<li class="someli"></li>
</ul>
</div>
<div class="somediv">
<ul>
<li class="someli">some other content</li>
<li class="someli"></li>
<li class="someli"></li>
</ul>
</div>
jQuery
jQuery.each(jQuery('.someli:first-child'), function() {
var height = jQuery(this).height();
alert(height);
jQuery(this).parent().parent().parent().find('.somediv' ).height(height);
});
以上函数会正确提醒每个 li:first-child
的高度,但仅将第二个 li:first-child
的高度设置为所有 .somediv
div。如何强制该函数将每个 li:first-child
的高度仅应用于该特定 li
的父级?
通过 .each()
方法的第二次迭代,您将找到两个 .somediv
元素并将第二个 li:first-child
的高度设置为所有这些元素。你需要使用 .closest()
jQuery.each(jQuery('.someli:first-child'), function() {
var height = jQuery(this).height();
alert(height);
jQuery(this).closest('.somediv' ).height(height);
});
此选择器 jQuery(this).parent().parent().parent()
找到两个 .somediv
元素的父元素,并且使用 .find()
您选择了它们两个