gpt4 book ai didi

jquery - 设置每 2 或 3 个元素的高度

转载 作者:行者123 更新时间:2023-12-01 00:01:45 25 4
gpt4 key购买 nike

我在一个页面上有多个 div,每列 2 个,因此每 2 个 div 的高度需要相同。据我所知,可用于强制相等高度的插件使所有元素具有相同的高度,我只需要每一对具有相同的高度。

我的标记看起来像这样

等等

我有以下有效的jquery,但我相信它可以更容易完成

    {
var rowOneHeight = Math.max($('div.large:eq(0)').height(),$('div.large:eq(1)').height());
$('div.large:eq(0)').css('min-height', rowOneHeight);
$('div.large:eq(1)').css('min-height', rowOneHeight);

var rowTwoHeight = Math.max($('div.large:eq(2)').height(),$('div.large:eq(3)').height());
$('div.large:eq(2)').css('min-height', rowTwoHeight);
$('div.large:eq(3)').css('min-height', rowTwoHeight);

var rowThreeHeight = Math.max($('div.large:eq(4)').height(),$('div.large:eq(5)').height());
$('div.large:eq(4)').css('min-height', rowThreeHeight);
$('div.large:eq(5)').css('min-height', rowThreeHeight);

}

对于一组三个 div 也需要执行相同的操作。谢谢

最佳答案

您可以使用 .slice() 进行循环以 2 组为一组进行循环,如下所示:

var elems = $("div.large");
for(var i = 0; i < elems.length; i+=2) {
var divs = elems.slice(i, i+2),
height = Math.max(divs.eq(0).height(), divs.eq(1).height());
divs.css('min-height', height);
}
<小时/>

或者,对于更通用的方法,因为您也想使用 3 来实现,所以这里有一个插件表单:

$.fn.setMinHeight = function(setCount) {
for(var i = 0; i < this.length; i+=setCount) {
var curSet = this.slice(i, i+setCount),
height = 0;
curSet.each(function() { height = Math.max(height, $(this).height()); })
.css('min-height', height);
}
return this;
};

然后你可以这样调用它:

$("div.large").setMinHeight(2); //or 3, etc

You can test it out here .

关于jquery - 设置每 2 或 3 个元素的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4216036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com