【发布时间】:2021-06-08 14:37:54
【问题描述】:
我正在尝试为字符“1×1”设置动画,但我似乎无法弄清楚为什么这段代码不能正常工作:
$('.overlay-listing').hover(function(){
var idx = 1;
$('.strip-hov span', this).each(function(){
if (!$(this).hasClass('splitrow')){
setTimeout(function(){
$(this).toggleClass('animate');
}, idx * 15);
}
idx++
});
});
我似乎真的无法找出问题所在。我还尝试更改“idx * 15”=>“idx”,例如:
$('.overlay-listing').hover(function(){
var idx = 1;
$('.strip-hov span', this).each(function(){
if (!$(this).hasClass('splitrow')){
setTimeout(function(){
$(this).toggleClass('animate');
}, idx);
}
idx++
});
});
代码在没有 setTimeout 的情况下可以正常工作,但是动画不是我喜欢的那样。因为它是“一次性”而不是“1×1”。
我也试过:$(this).delay(xxxx).toggleClass('animate'); 无效。
【问题讨论】:
-
请定义“无法正常工作”。
-
它什么也没做。没有错误只是虚无。但我似乎已经想通了,无论如何感谢您的时间。
标签: javascript jquery settimeout each