2013-03-23 61 views
1

如何啓用或禁用(或切換)'後'僞類?切換僞類:啓用特定div後

我試圖想出沿着線的東西:

$('.card').click(function(){ 

    if(pick1) { 
     pick2 = $(this).css('background-color'); 
     id2 = $(this).attr('id'); 
     >>> add display:none to .card:after for the clicked div <<< 

     if(pick1 == pick2 && id1!=id2) alert('Correct'); 
      else { 
       alert('Incorrect'); 
       >>> remove display:none from .card:after on clicked divs <<< 
      } 

     pick1 = false; 
     pick2 = false; 
    } else { 
     pick1 = $(this).css('background-color'); 
     id1 = $(this).attr('id'); 
     >>> add display:none to .card:after for the clicked div <<< 
    } 
}); 

我的項目是在這裏:http://jsfiddle.net/94jerdaw/29TCZ/3/

+0

是你能夠解決您的問題? – 2013-03-24 23:12:46

+0

是的,謝謝:)我做了一個單獨的課程,並在需要時添加/刪除它。 – Dave 2013-03-25 15:55:54

+0

太好了。如果我的回答很有幫助,請隨時接受,然後讓其他人知道這個問題已經解決。 – 2013-03-25 16:00:46

回答

5

你爲什麼不有添加一個額外的類的規則?像這樣

.hidden.card:after{ 
    display:none 
} 

然後代碼可以只是$().addClass("hidden")$().removeClass("hidden")

if(pick1) { 
    pick2 = $(this).css('background-color'); 
    id2 = $(this).attr('id'); 
    $(this).addClass("hidden"); 

    if(pick1 == pick2 && id1!=id2) alert('Correct'); 
     else { 
      alert('Incorrect'); 
      $(this).removeClass("hidden"); 
     } 

    pick1 = false; 
    pick2 = false; 
} else { 
    pick1 = $(this).css('background-color'); 
    id1 = $(this).attr('id'); 
    $(this).addClass("hidden"); 
} 
+0

這。因爲據我所知,你不能以本地方式訪問僞選擇器。 – Ohgodwhy 2013-03-23 21:30:20