对于在Jquery中经验丰富的人来说,这是一个非常简单的问题。
例如我们有一些带有几个div的简单html页面,其中3个具有相同的css类'sidebar'
每个'侧边栏'div都有不同的内容和不同的高度。
我需要比较这个div高度并找到最长的高度。
我知道如何实现比较,但我不知道如何在Jquery中我可以采取每个div
将它们的值存储在vairable或array中。
答案 0 :(得分:13)
我不确定为什么到目前为止发布的两个答案都在使用jQuery.each()
,而不是直接调用each()
,所以这就是我的建议:
$('#elementID').siblings().each(function ()
{
var height = $(this).height();
});
将每个高度放入数组:
var heights = [];
$('#elementID').siblings().each(function ()
{
heights.push($(this).height());
});
或者,只需使用map()
:
var heights = $('#elementID').siblings().map(function ()
{
return $(this).height();
}).get();
答案 1 :(得分:5)
$.each($('.sidebar'), function() {
var height = $(this).height();
});
答案 2 :(得分:0)
当我必须做同样的事情时,这是我使用的代码:
var tabPanels = $("...");
var maxHeight = 0;
$.each(tabPanels, function() {
var height = $(this).height();
maxHeight = (height > maxHeight) ? height: maxHeight;
});
$.each(tabPanels, function() {
$(this).css("height", maxHeight + "px");
});