2009-12-05 65 views
3

我有如下因素的HTML标记:JQuery类名选择器开始于?

<DIV class="bubble bubble_white"> 
    <DIV class=bubble_large></DIV> 
</DIV> 
<DIV class="bubble bubble_black"> 
    <DIV class=bubble_large></DIV> 
</DIV> 

我想选择的类bubble bubble_whitebubble bubble_black。我在想代码的下方,但没有奏效:

$(".bubble.[class^=bubble_]")

关于如何做到这一点任何想法?

回答

4

试试这个:

$(".bubble[class*=bubble_]") 
+0

谢谢你好!!!!!! – Martijn 2009-12-05 14:22:20

+4

请注意,这也会匹配“foobubble_bar”之类的内容。 – Gumbo 2009-12-05 14:39:20

5

[attr^=val]选择是比较全的属性值。所以你的属性值必须以bubble_开头才能被选中。对于一个空格分隔的列表,你可以使用[attr|=val]选择:

$(".bubble[class|=bubble_white], .bubble[class|=bubble_black]") 

或者你做你自己的过滤:

$(".bubble").filter("[class|=bubble_white], [class|=bubble_black]") 

或者:

$(".bubble").filter(function() { 
    var $this = $(this); 
    return $this.hasClass("bubble_white") || $this.hasClass("bubble_black"); 
}) 

或者:

$(".bubble").filter(function() { 
    return /(?:^|\s+)bubble_/.test(this.className); 
}) 
+0

也适用。谢谢! – Martijn 2009-12-05 14:21:44