我想在上一个 .dot
延迟 3 秒后为每个 .dot
制作动画
这是我使用的代码。但它不起作用。
var time = 3000;
$(".dot").each(function() {
setTimeout(function() {
$(this).addClass("animate");
$(this).find(".num").addClass("animate");
}, time)
time += 3000;
});
最佳答案
this
不引用 setTimeout()
中的元素,因此它不起作用。
您可以将参数传递给函数
var time = 3000;
$(".dot").each(function (i) {
setTimeout(function (self) {
self.addClass("animate");
self.find(".num").addClass("animate");
}, (i + 1) * time, $(this));
});
关于javascript - 在 jQuery 中的each()函数之后进行延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47328021/