Jquery在点击上设置行背景

时间:2013-09-06 17:33:30

标签: jquery

我正在尝试为我的html表创建一个jquery脚本,这样当我点击tr行时,它会设置它的颜色。我使用.css()成功完成了这项工作,但我想要它,以便当我再次点击同一行时,我希望将颜色设置回默认值(背景颜色)。

setTableRowColor:function(status) {
        if (status == true) {
            $("table tr").click(function(){
                $(this).css('background-color','red');                      
            });                 
        };
    },

检查: http://jsfiddle.net/R5GzS

所以我不知道如何将css()回调设置为我的默认颜色。

2 个答案:

答案 0 :(得分:3)

最好的办法是创建一个带有行颜色的CSS类,然后切换类:

$("table tr").click(function(){
    $(this).toggleClass('active');                   
}); 

.active {
    background-color: red;
}

答案 1 :(得分:2)

改为使用类,并通过toggleClass()添加/删除它:

setTableRowColor:function(status) {
    if (status == true) {
        $("table tr").click(function(){
            $(this).find('td').toggleClass('red');                      
        });                 
    };
}

<强> jsFiddle example