2014-01-08 34 views
0

我有這個網站:刪除不具有類特定的孩子

<div class="post-content"> 
    I have something to give away for free. Call 
    <span class="togglers"> 
     <a class="toggler selected" href="#" title="change" style="display: inline;">me</a> 
     <span class="divider" style="display: inline;">|</span> 
     <a class="toggler" href="#" title="change" style="display: inline;">us</a> 
    </span> 
    today and 
    <span class="togglers"> 
     <a class="toggler" href="#" title="change" style="display: inline;">I'll</a> 
     <span class="divider" style="display: inline;">|</span> 
     <a class="toggler" href="#" title="change" style="display: inline;">we'll</a> 
    </span> 
    hand deliver it to your doorstep. 
</div> 

所以它看起來像這樣:

I have something to give away for free. Call [me|us] today and [I'll|we'll] hand deliver it to your doorstep. 

然後用戶必須selece「我」的能力,或者「我們」,和「我會」或「我們會」。一旦他們從每個組中選擇一個單詞,那個單詞的包含就有一個「被選中」的類別。但是,我只想在每個span.togglers有a.selected時做一些事情。恐怕我找到了Javascript的答案,但我不太瞭解JavaScript以瞭解它的工作原理。我如何使用jQuery來做到這一點?或者,我是否必須使用Javascript來做到這一點?

+3

jQuery *是* JavaScript。 –

+0

顯示你有什麼嘗試。?並多解釋一下。 –

+0

@RocketHazmat嗯,是的,謝謝。我知道它是一個基於Javascript的語言庫,但語法不同,我仍然試圖用jQuery而不是純Javascript來找到答案。 – Fletchling

回答

1

要檢查每一個togglersa.selected,你可以這樣做:

if ($('.togglers').length == $('.toggler.selected').length) { 
    $(".toggler:not('.selected')").remove(); //removes all .toggler tags that don't have the .selected class 
} 

(我在這裏假設您的代碼確保每個.togglers只有一個.toggler可以是.selected,否則您將不得不修改代碼以單獨檢查每個.togglers

+0

太棒了!我明白爲什麼這也適用,這正是我一直在尋找的。非常感謝你。 – Fletchling

1

如果喲要刪除「選擇」類沒有元素,只是做與jQuery:

$(".toggler").each(function(){ 
    if(!this.hasClass('selected')){ 
    this.remove(); 
    } 
}); 
相關問題