js页面上表格鼠标移动变色,移走恢复。与框架本身封装的隔行变色发生冲突

青衣宋词 2016-03-09 09:57:26
需求是:在页面上的信息表格里,鼠标移动到哪行,哪行的背景颜色就加深,当鼠标移走的时候恢复原本颜色

现状是:由于我现在的项目框架本身封装的CSS属性中,做到了隔行换色,也就是说,当你生成的页面表格时,自动是奇数行是:background-color: #f9f9f9; 而偶数行则本身没有background-color. 我现在的代码效果是,由于奇数行本身有背景颜色,所以鼠标移动上去,不会背景颜色加深,只有偶数行才起效果,我的代码如下(在这里我想先去掉他的本身背景颜色属性,可是不起作用),希望各位指教一下,谢谢了:
<script type="text/javascript">
$(document).ready(function() {
$("#contentTable tbody tr").hover(function() {
// $("#contentTable li:last").hover(function() {
$(this).removeAttr("background-color");
$(this).addClass("blue");
}, function() {
$(this).removeAttr("background-color");
$(this).removeClass("blue");
});
});
</script>
<style>
.blue {
background-color:#bcd4ec;
}
</style>[/color]

...全文
277 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
青衣宋词 2016-03-10
  • 打赏
  • 举报
回复
回复5楼,谢谢哥们
青衣宋词 2016-03-09
  • 打赏
  • 举报
回复
回复2楼哥们,我第一次用的就是你那个代码,你仔细看下我的情况,我的是本身奇数行就有背景颜色,而这个背景颜色是框架封装的,所以使用你那个代码,是一样的效果,在奇数行不会出现背景加深
-0000- 2016-03-09
  • 打赏
  • 举报
回复
$(document).ready(function() { $("#contentTable tbody tr").hover(function() { $(this).addClass("blue"); }, function() { $(this).removeClass("blue"); }); }); 这样就行了吧,你addClass时会把他默认背景色覆盖掉的
青衣宋词 2016-03-09
  • 打赏
  • 举报
回复
各位帮帮忙
丰云 2016-03-09
  • 打赏
  • 举报
回复
晕,忘记删除removeAttr那行多余代码了。。。。。
丰云 2016-03-09
  • 打赏
  • 举报
回复
算了,代码还是帮你敲了,面得想歪了
$(document).ready(function() {
            $("#contentTable tbody tr").hover(function() {
                $(this).bgcolor = $(this).css("background-color");
                $(this).removeAttr("background-color");
                $(this).css('background-color','#bcd4ec');
            }, function() {
                $(this).css('background-color', $(this).bgcolor);
            });
        });
丰云 2016-03-09
  • 打赏
  • 举报
回复
最好用css伪类hover做鼠标滑过变色效果, 实在不行,只能用js,也有办法,而且很简单,只是你没想到而已。 在鼠标mouseover事件中,先取当前行的背景色,保存起来,再换成想要的背景色,当鼠标mouseout时,恢复原来的就行。代码懒得写了,思路就这样,自己敲吧。

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧