我试图找出是否可以定位一个包含2个以上单词的div ...并隐藏它们。
例如像这样的一组div:
<div class="wrap">
<div>two words</div>
<div>two words</div>
<div>three words no</div>
<div>two words</div>
<div>two words</div>
<div>three words no</div>
<div>two words</div>
</div>
用于代码测试的jsFiddle:http://jsfiddle.net/x9q8f/1/
理想情况下,我试图定位任何包含2个以上单词的.wrap div
,可能是3,4,5个单词等,我只想显示那个div包含2 ...如果可能的话?任何建议将不胜感激!
答案 0 :(得分:2)
使用单词分隔符拆分文本并计算零件数量
$('.wrap div').filter(function () {
return $.trim($(this).text()).split(/\W/).length > 2
}).hide()
演示:Fiddle
答案 1 :(得分:2)
答案 2 :(得分:0)
你走了,
var divs = $(".wrap div");
$.each(divs, function(key,val){
if ($.trim($(val).text()).split(" ").length > 2) {
$(val).hide();
}
});
已更新!
答案 3 :(得分:0)
您可以使用$.filter()
和.split()
。
var $divsWithMoreThanTwoWords = $('div').filter(function(){
return $.trim($(this).text()).split(' ') > 2;
});
$divsWithMoreThanTwoWords.addClass('wordy').hide();