jQuery的hover方法搭配css的hover选择器,实现选中元素突出显示

问题简述:

今天帮一个师姐做网页遇到一个这样的要求:

鼠标不移动进表格,表格透明度不变。

鼠标移动进表格,hover到的单元格透明度不变,没hover到的单元格透明度改变。

先贴我已经实现好的效果,一开始,表格透明度不变。

jQuery的hover方法搭配css的hover选择器,实现选中元素突出显示

当我鼠标移动到第二排第三个单元格,其他单元格降低透明度。

jQuery的hover方法搭配css的hover选择器,实现选中元素突出显示

解决办法

一开始,我用的是CSS实现方法,是下面这样

#table td{
opacity:0.5;
}
#table td:hover{
opacity:1;
}

不过这样一开始进去的时候表格透明度就是0.5,看起来很不好。

后来我就用jQuery的hover方法,不过它总是选中了里面的所有单元格,这其中过程很曲折,我就不一一介绍了,我就讲讲我怎么实现的。

$('#content td').hover(
function(){
$('#content td').css('opacity','0.5');
$('#content td:hover').css('opacity','1');
},
function(){
$('#content td').css('opacity','1');
});

content是我table的id名,可以看到我们对单元格hover方法里面加了两个function

第一个funtion移动到表格时,首先

$('#content td').css('opacity','0.5');

表示鼠标移动进去的时候,所有单元格透明度为0.5,然后

$('#content td:hover').css('opacity','1');

这里的css的hover选择器表示选中单个单元格。

第二个funtion表示鼠标离开表格时

$('#content td').css('opacity','1');

所有单元格透明度为1。

新发现

我发现我之前做的多余了,其实没有必要那么麻烦,直接可以用css来做,只是多个选择器写在一起而已。

后面再更新。待续。。。。

上一篇:Using $this when not in object context in


下一篇:(转)log4j(六)——log4j.properties简单配置样例说明