我无法弄清楚为什么这不起作用。我基本上试图将类(.scroll)添加到任何.panel-body,如果它高于320px。否则,请不要将.scroll类添加到.panel-body。
我做错了什么?
我提供了一个jsfiddle:
var maxHeight = 320;
var panelBody = $(this).('.panel-body');
var panelBodyHeight = panelBody.height();
if ( maxHeight < panelBodyHeight ) {
panelBody.addClass('scroll');
}
else {
panelBody.removeClass('scroll');
}
答案 0 :(得分:2)
这是你出错的地方:
var panelBody = $(this).('.panel-body');
应该是:
var panelBody = $('.panel-body');
此外,您的比较应为if(panelBodyHeight > maxHeight)
。谢谢@Pete告诉了这一点。
答案 1 :(得分:2)
您需要在每个循环中执行此操作:
$('.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');