表格单元格背景颜色变化问题

时间:2011-03-09 08:04:41

标签: jquery jquery-ui jquery-selectors

我处理另一个人的代码,当鼠标悬停在单元格上时,我尝试更改表格单元格背景颜色,并在鼠标离开时更改回原始背景颜色。我使用以下代码:

var bgcolor=$(".cell-el").css("background-color")

$(".cell-el").hover(
       function(){
         $(this).css("background-color", "#3c3c36")}, //mouse enter, bg-color change
       function(){
         $(this).css("background-color", bgcolor) // mouse leave, bg-color change back
 })

事情进展顺利,除了当鼠标第一次进入单元格时,单元格背景颜色更改为“#3c3c36”,但是当鼠标离开时单元格首次进入并再次进入单元格后,单元格的背景颜色变为“#3c3c36”。

小鼠的细胞颜色永远不会改变,首先进入,之后,一切都运转良好。可能是造成这个问题的原因是什么?

3 个答案:

答案 0 :(得分:2)

你可以用简单的css

来试试
.cell-el td:hover{
   background-color:#3c3c36;
}

答案 1 :(得分:1)

我只是在jsfiddle中模拟了一些东西,你的代码可以运行:http://jsfiddle.net/2fadn/

其他地方可能有问题。

另外,我建议您使用CSS来获得此效果而不是JS。只需使用:hover伪类就足够了。

答案 2 :(得分:0)

工作正常,请参阅演示:http://jsfiddle.net/qjnqm/

通常的问题是这一行:

var bgcolor=$(".cell-el").css("background-color")

不在ready处理程序中。

$(function(){
   var bgcolor=$(".cell-el").css("background-color")
   ..// etc
});