【发布时间】:2018-04-29 03:50:35
【问题描述】:
我有一个包含许多数据行的表,它使用以下 CSS 进行了斑马条纹:
#datatable tr:nth-child(odd) {
background-color: #fff;
}
#datatable tr:nth-child(even) {
background-color: #fafafa;
}
表中的数据通过 ajax 调用不断更新,我想为数据已更改的特定行添加临时突出显示。
我想要这种新颜色(如果数据值减少,则为红色,如果数据值增加,则为绿色),很好地淡入,停留一两秒钟,然后再次淡出到原始行颜色。
我刚刚使用 jQuery 和 CSS 进行了这项工作;
$('#row_id').addClass("temphighlight");
setTimeout(clearHighlighting, 3000);
function clearHighlighting(){
$("#row_id").removeClass("temphighlight");
}
#datatable tr.temphighlight {
background-color: #c6efce;
transition: background 1.0s ease;
}
这适用于淡入,但延迟后,CSS类立即被移除,没有淡出。
我怎样才能让这个突出显示有更好的效果,它淡入和淡出?
我检查了几个类似的 SO 问题,但答案要么不起作用,要么不适用 - 例如建议您将淡入淡出设置为白色,这对我不起作用,因为我的行的颜色不同由于行条带化。
【问题讨论】:
-
您可以使用
keyframes-animation将 50% 动画上的background-color更改为#c6efce并在 100% 上恢复默认颜色。
标签: javascript jquery html css