【发布时间】:2021-12-12 13:10:21
【问题描述】:
我正在尝试按顺序切换元素的类。我找到并修改了这段代码,但只能使用淡入淡出:
$('.desplegable').click(function() {
var lis = $(this).parent().find('.pops');
var delay = 0;
lis.each(function() {
var $li = $(this);
$li.queue('fade', function(next) {
$li.delay(delay).fadeIn(0, next);
});
$li.dequeue('fade');
delay += 100;
});
});
是否可以使用切换类来做到这一点?类似这样的东西,但这里的顺序不起作用
$('.desplegable').click(function() {
var lis = $(this).parent().find('.pops');
var delay = 0;
lis.each(function() {
var $li = $(this);
$li.queue('toggle', function(next) {
$li.delay(delay).toggleClass('appear', next);
});
$li.dequeue('toggle');
delay += 100;
});
});
这是 HTML
<div>
<div class="desplegable">Title</div>
<div class="pops">Element 1</div>
<div class="pops">Element 2</div>
<div class="pops">Element 3</div>
</div>
【问题讨论】:
-
如果您能提供相关的html代码以便我们进行测试,将会有很大帮助。
-
我用html编辑了这个问题,谢谢和抱歉
-
您的问题是类更改
addClasstoggleClass等不会进入动画队列,因此不受.delay()的影响
标签: jquery queue timeout sequence settimeout