Jquery 基于元素高度的AddClass

Jquery 基于元素高度的AddClass,jquery,height,addclass,Jquery,Height,Addclass,我不明白这为什么不起作用。我基本上是在尝试向任何.panel主体添加一个类(.scroll),如果它高于320px。否则,不要将.scroll类添加到.panel主体中 我做错了什么 我提供了一个JSFIDLE: var maxHeight = 320; var panelBody = $(this).('.panel-body'); var panelBodyHeight = panelBody.height(); if ( maxHeight < panelBodyHeight )

我不明白这为什么不起作用。我基本上是在尝试向任何.panel主体添加一个类(.scroll),如果它高于320px。否则,不要将.scroll类添加到.panel主体中

我做错了什么

我提供了一个JSFIDLE:

var maxHeight = 320;
var panelBody = $(this).('.panel-body');
var panelBodyHeight = panelBody.height();

if ( maxHeight < panelBodyHeight ) {
   panelBody.addClass('scroll');
}
else { 
   panelBody.removeClass('scroll');
}
var maxHeight=320;
var panelBody=$(this)。(“.panel body”);
var panelBodyHeight=panelBody.height();
如果(最大高度<面板车身高度){
panelBody.addClass('scroll');
}
否则{
panelBody.removeClass('scroll');
}

这是你出错的地方:

var panelBody = $(this).('.panel-body');
应该是:

var panelBody = $('.panel-body'); 
此外,如果(panelBodyHeight>maxHeight),则比较应该是
。谢谢@Pete告诉我这些


&

这是您出错的地方:

var panelBody = $(this).('.panel-body');
应该是:

var panelBody = $('.panel-body'); 
此外,如果(panelBodyHeight>maxHeight)
,则比较应该是
。谢谢@Pete告诉我这些


&

您需要在每个循环中这样做:

$('.panel-body').each(function() {
    panel = $(this);
    if (panel.outerHeight() > maxHeight) {
        panel.addClass('scroll');
    } else {
        panel.removeClass('scroll');
    }
})

或者您可以使用过滤器:

$('.panel-body').filter(function() {
    return $(this).outerHeight() > maxHeight;
}).addClass('scroll');

您需要在每个循环中这样做:

$('.panel-body').each(function() {
    panel = $(this);
    if (panel.outerHeight() > maxHeight) {
        panel.addClass('scroll');
    } else {
        panel.removeClass('scroll');
    }
})

或者您可以使用过滤器:

$('.panel-body').filter(function() {
    return $(this).outerHeight() > maxHeight;
}).addClass('scroll');

我以前就试过了。该解决方案对我仍然不起作用。这是错误的,您还将
scroll
类添加到不大于最大值的元素中-height@Pete我没注意到。我已经更新了。。顺便说一句,谢谢你,我以前也试过。该解决方案对我仍然不起作用。这是错误的,您还将
scroll
类添加到不大于最大值的元素中-height@Pete我没注意到。我已经更新了。。谢谢你way@JosephSjoblom别忘了把答案标为正确答案one@JosephSjoblom别忘了把答案标为正确答案