javascript:恢复div的背景色

javascript:恢复div的背景色,javascript,jquery,html,css,Javascript,Jquery,Html,Css,在我的js代码中,我有: $(document).ready(function () { $(".row.rowstriped:even").css("background-color", "lightGray"); }); var oldBackColor; function DoRowGold(el) { var id = el.id; sId = "#" + id; oldBackColor = $(sId).css('background-color

在我的js代码中,我有:

$(document).ready(function () {
    $(".row.rowstriped:even").css("background-color", "lightGray");

});

var oldBackColor;
function DoRowGold(el) {

    var id = el.id;
    sId = "#" + id;
    oldBackColor = $(sId).css('background-color'); 
    $(sId).css('background-color', '#FFD700');

}

function DoRowNormal(el) {
    var id = el.id;
    sId = "#" + id;
    $(sId).css('background-color', oldBackColor);
}
在我的HTML中:

<div id="someid" class="row rowstriped" onmouseover="DoRowGold(this)" onmouseout="DoRowNormal(this)">
现在,我希望当加载文档时,行变成交替颜色,但当用户在一行上移动鼠标时,其背景颜色变成黄金。然后,当它用鼠标离开行时,背景颜色应该返回与jquery函数所做的条带化相同的颜色。 为了在mouseout事件中重置div,我尝试在更改它之前存储div的旧颜色,但没有成功。 我怎样才能做到这一点


**编辑我忘了在我的代码示例中给她id,但在我的真实代码中有一个id(由Razor生成)

@user1238784,这里您忘了给您的div元素id,请尝试给定的解决方案

$(文档).ready(函数(){
$(“.row.rowstriped:偶数”).css(“背景色”、“浅灰色”);
});
背景色;
多洛金函数(el){
变量id=$(el).attr(“id”);
sId=“#”+id;
oldBackColor=$(sId).css('background-color');
console.log(旧背景色);
$(sId).css('background-color','#FFD700');
}
函数DoRowNormal(el){
var id=el.id;
sId=“#”+id;
$(sId).css('background-color',oldBackColor);
}

您可以使用简单的CSS实现这一点,如下所示:

表格{
边界塌陷:塌陷;
}
运输署{
填充:10px 20px;
边框:1px实心#ddd;
}
.rowstriped tr:n个孩子(奇数){
背景色:#ddd;
}
.rowstriped tr:悬停{
背景色:金色;

约翰
史密斯
彼得
卢卡斯
亚美奖
约瑟夫
莫莉
霍珀
詹姆斯
卢克

好的,我决定使用css:

.rowstriped:nth-child(odd) {
        background-color: #ddd;
    }

    .rowstriped:hover {
        background-color: gold;
    }

我在你的div上看不到任何id,那么你希望
el.id
如何工作为什么使用javascript更改颜色,你可以简单地使用以下用户:hover@Carsten这是一个代码示例,html是从razor视图中提取的,我忘记了将Id放在适当的位置。在我的代码中,条带化和颜色更改都起作用,只有背景不会返回旧颜色..rowstriped tr:nth child(odd){background color:#ddd;}是css3,但我想用JavaScript来做,当你只需要
CSS
it时,你需要JS的确切原因是什么?不是所有浏览器都支持css3?说真的?除非你正在制作一个运行IE8的网站。大多数浏览器都支持css3
.rowstriped:nth-child(odd) {
        background-color: #ddd;
    }

    .rowstriped:hover {
        background-color: gold;
    }