2015-07-28 59 views
4

使用jquery,是否有一个选择器语句直接获取具有特定字符串长度属性的所有DOM对象?jquery按属性长度选择

例如,在下面的html中,只检索具有字符串长度类3 =>的节点会导致第一个和第二个类的div?

<div class="one"></div> 
<div class="two"></div> 
<div class="three"></div> 
+1

你可以用'过滤器()',但我真的不知道你为什么会需要一个......不管你正试图做,听起来像一个XY问题 –

+0

什么是XY问题? – mmzc

+0

只是谷歌它... –

回答

6

有点奇怪的要求,但你可以使用filter()来实现它。

var $divs = $('div').filter(function() { 
    return this.className.length === 3; 
}); 
0

Rory当然有一个更优雅的解决方案,但是当我有类似的需求时,我就做了一些事情。

$(function() { 
     var a = []; 
     $div = $('div').each(function(i , el){ 
      return ($(this)[0].className.length === 3) ? a.push($(this)) : null; 
     }); 
});