2013-11-25 28 views
0

我複製了我的問題的jsfiddle:http://jsfiddle.net/66UCX/檢查類背景顏色之間進行切換

所有我想要做的就是切換之間紅色,當用戶點擊一個表中的TD白色。我已經嘗試使用if語句來測試背景顏色,如下所示: if($("#fbodytd_"+uid+"_"+row+"_"+col).css("background-color") == "rgb(255, 0, 0)"){

並且沒有起作用,所以我嘗試添加和刪除名爲「active」的類並對其進行測試。謝謝。

+0

http://jsfiddle.net/66UCX/8/ <檢查出來:) – Cracker0dks

回答

0

你沒有讓你的函數function changecream(uid, row, col)任何約束力。

這裏是一個工作Fiddle

$("table").on("click", "td", function(){ 
if($(this).hasClass("red")){ 
    $(this).removeClass("red").addClass("white"); 
} else { 
    $(this).removeClass("white").addClass("red"); 
} 

});

編輯: yourse如果你只背景顏色和選擇的顏色之間進行切換,你可以簡化「上點擊」:

$(this).toggleClass("red"); 
0

你必須包括jQuery庫

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascript"></script> 

和你的代碼看起來象在$(document).ready函數

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascript"></script> 
<script> 
$(document).ready(function(){ 

$('#button').bind('click', function(){ 
    $(this).after('<span> click is active</span>'); 
    $('span').fadeOut(1000); 
}); 

$('#toggle').toggle(
    function(){ 
     $(this).text('rebind').removeClass('unbind').addClass('rebind'); 
    }, 
    function(){ 

    $(this).text('unbind').addClass('unbind').removeClass('rebind'); 
    } 
); 

if($("#toggle").hasClass("unbind")) { 
    $('#button').bind('click'); 
} 
else { 
    $('#button').unbind('click'); 
} 

}); 
</script> 
0

如果你想要的是簡單地改變背景回來第四(也可能是別的東西)。添加類像

.active 
{ 
    background-color: Red 
} 

,並使用代碼如下所示:

$("table").on("click", "td", function() { 
    $(this).toggleClass("active"); 
}); 

希望這有助於。

0

如果您無論如何使用jQuery,下面的簡化版本應該這樣做:

$('table.bodymap td').click(function() { 
    $(this).toggleClass('active') 
}); 

的工作示例見this fiddle