2014-11-14 41 views
2

相關的HTML元素我在HTML以下3個要素:你怎麼可以只選擇與特定類

<span class="a b"></span> 
<span class="a"></span> 
<span class="a b"></span> 

我要選擇它只有「A」級的元素。 如果我只是做$("span.a"),那麼所有三個元素將被選中。 另外,我想在for循環中完成它,因爲基於此我必須做一些其他計算。

它看起來像一個簡單的問題,但由於某種原因,我無法弄清楚。

回答

0

一種不同的方法比@dfsq

$('.a:not(.b)') 

a類選擇一切,沒有b類。這也適用於純CSS選擇器。

.a:not(.b) { 
    color: red; 
} 

如果你想「正是.a,沒有別的」,那麼dfsq的解決方案是巨大的。如果你想要更多的靈活性與類的組合,那麼這可能會更好。

這段代碼演示了:

.a:not(.b) { 
 
    color: red; 
 
}
<span class="a b">This span has class="a b"</span><br> 
 
<span class="a">This one has only class="a"</span><br> 
 
<span class="a b">This also has class="a b"</span><br>

5

通過class屬性選擇元素:

$("span[class='a']") 
+0

這是罕見的場合,當你想從字面上檢查類的屬性,而不是使用類選擇之一。 – 2014-11-14 21:50:43

+0

根據OP打算如何處理for循環,OP可以包含'each()':'$(「span [class ='a']」)each(function(){$(this) .attr('class'); // a});' – 2014-11-14 22:47:38