切换伪类:在特定div之后

时间:2013-03-23 21:26:21

标签: javascript jquery css class html

如何启用或禁用(或切换)'after'伪类?

我正试图想出一些类似的东西:

$('.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/

1 个答案:

答案 0 :(得分: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"); 
}