这是我的表行,我的需求是第一次显示行的背景颜色为黄色,4秒后颜色变淡。我正在使用以下代码:
$('#lock').prepend('<tr><td>hello</td><td>cool</td><td>dad</td></tr>');
$("#lock tr").css('background-color','yellow').delay(4000).css('background-color','fade');
问题:延迟不起作用。
这是我的表行,我的需求是第一次显示行的背景颜色为黄色,4秒后颜色变淡。我正在使用以下代码:
$('#lock').prepend('<tr><td>hello</td><td>cool</td><td>dad</td></tr>');
$("#lock tr").css('background-color','yellow').delay(4000).css('background-color','fade');
问题:延迟不起作用。
#lock {
background-color: yellow;
transition: background-color 0.3s;
}
#lock.red {
background-color: red;
}
<body>
标签之前添加以下JavaScript代码:// JS solution
setTimeout(function() {
var element = document.getElementById('lock');
element.classList.add('red');
}, 4000);
// jQuery solution
$('#lock').delay(4000).addClass('red'); // no good, check the edit.
编辑
如果您想知道为什么您的代码无法正常工作,请查看此答案。 delay
函数似乎只对队列中的项目(如动画)起作用。 对于其他任何内容,请使用我第一个JS解决方案中提供的普通旧计时器。
var $table = $("#lock");
$table.css("background-color", "yellow");
setTimeout(function () {
$table.css("background-color", "red");
}, 4000);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
。 - Mohammed Abrar Ahmed.css('background-color','fade')
似乎无效。你应该尝试使用.css('background-color','#fff')
。 - techie_28