如何在延迟和延迟之后添加一个类和另一个类?
我似乎只能添加一个。
MainActivity
答案 0 :(得分:3)
您遇到的问题很可能就是您错误地使用了jQuery的延迟功能。请查看此SO问题以供参考:.delay() and .setTimeout()
由于我们不使用动画或在现有的jQuery队列中,因此在大多数情况下您应该使用setTimeout
:
$(document).ready(function() {
window.setTimeout(function() {
$(".websites-container").addClass("active");
}, 5000);
window.setTimeout(function() {
$(".websites-container").addClass("gone");
}, 8000);
});
答案 1 :(得分:3)
您需要在.queue()
回调中调用.dequeue()
,否则队列中的以下项目永远不会被执行。
$(document).ready(function() {
$(".websites-container").delay(1000).queue(function() {
// I'm impatient. I shortened the times.
$(this).addClass("active").dequeue();
}).delay(2000).queue(function() {
$(this).addClass("gone");
});
});

.active {font-weight: bold}
.gone {color:red}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="websites-container">abc</div>
&#13;
(这几乎是由@adeneo解决的,但在回调中放置了dequeue除外。)