我希望.dot在之前的3秒延迟之后为每个设置动画.dot
.这是我使用的代码.但它不起作用.
var time = 3000;
$(".dot").each(function() {
setTimeout(function() {
$(this).addClass("animate");
$(this).find(".num").addClass("animate");
}, time)
time += 3000;
});
Run Code Online (Sandbox Code Playgroud)
this不是指元素setTimeout(),因此它不起作用.
您可以将参数传递给函数
var time = 3000;
$(".dot").each(function (i) {
setTimeout(function (self) {
self.addClass("animate");
self.find(".num").addClass("animate");
}, (i + 1) * time, $(this));
});
Run Code Online (Sandbox Code Playgroud)