2014-11-06 75 views
2

我在10周的div一旦用戶點擊他們的「選擇」的div總數應該變成藍色白色文字5.我做了這樣的:更改字的顏色和計數器,每個點擊的Jquery

<div id="sen1" class="sentences">Text1</div> 
<div id="sen2" class="sentences">Text2</div>   
<div id="sen3" class="sentences">Text1</div> 
<div id="sen4" class="sentences">Text2</div>   
... 

$(".sentences").click(function() { 
    count++ 
    $(this).css("color", "blue") 
    selected_true.push($(this).text()) 
    if (count == 5){ 
     $(".sentences").off("click") 
     //go to next page 
    } 
}); 

現在,如果再次單擊藍色文本並希望將count變量減一,現在我希望文本再次變爲白色。所以理想情況下,我希望每次選擇一個句子時增加計數器,並在未選中時再次減小計數器。 我想過toggle但我怎樣才能將計數器納入切換方法?

回答

4

這樣做,這樣可能會更有意義:

CSS

.sentences { 
    color: #fff; 
} 
.sentences.turnedon { 
    color: blue; 
} 

的JavaScript

$(".sentences").click(function() { 

    if($(this).hasClass('turnedon')) { 

     $(this).removeClass('turnedon'); 
     count-1; 

    } else { 

     $(this).addClass('turnedon'); 
     count++; 
    } 
0

一個更好的方法是添加一個類的每個點擊的div和時將其刪除它被再次點擊。

使用JQuery的toggleClass得到它在一個簡單的行來完成:

$(this).toggleClass('selected'); 

然後你可以指望選定的div像這樣:

$('.selected').length;