如何选择50px或更高的h2标签并更改其CSS?
// Get an array of all h2 element heights
var elementHeights = $('.sub-services .sub-service__content h2').map(function() {
return $(this).height();
}).get();
有了这个,我得到了一个具有高度的数组,但是如何选择50px或更大的高度来更改CSS?
我也应该为此使用.map()或.each()吗?我有点困惑。 jQuery map vs. each
谢谢
答案 0 :(得分:3)
回答您的标题;使用.filter()
获取符合特定条件的元素子集:
var $H2_50Plus = $('h2').filter(function() {
return $(this).height() >= 50;
});
$H2_50Plus.css({background:'red'}); // apply some CSS?
如果有帮助,您也可以使用.addClass()
var $H2_50Plus = $('h2').filter(function() {
return $(this).height() >= 50;
});
$H2_50Plus.addClass('red');
.red {
background: red;
}
<h2>one<br>one</h2>
<h2>two</h2>
<h2>three<br>three</h2>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>