我处理另一个人的代码,当鼠标悬停在单元格上时,我尝试更改表格单元格背景颜色,并在鼠标离开时更改回原始背景颜色。我使用以下代码:
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”。
小鼠的细胞颜色永远不会改变,首先进入,之后,一切都运转良好。可能是造成这个问题的原因是什么?
答案 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
});