Jquery 向队列添加延迟类,但希望在进一步延迟后将其删除
我不是Jquery专家,但采用了一个模板,它目前可以工作,但我试图修改它,以便任何添加的延迟类稍后会随着进一步的延迟而消失 这段代码正确地应用了一个数据为indelay ms delay的“动画”类,但希望它稍后删除数据为outdelay ms的“动画”类-尝试将队列链接在一起,但不起作用-应用下面显示的“动画”类的基本代码Jquery 向队列添加延迟类,但希望在进一步延迟后将其删除,jquery,queue,delay,addclass,removeclass,Jquery,Queue,Delay,Addclass,Removeclass,我不是Jquery专家,但采用了一个模板,它目前可以工作,但我试图修改它,以便任何添加的延迟类稍后会随着进一步的延迟而消失 这段代码正确地应用了一个数据为indelay ms delay的“动画”类,但希望它稍后删除数据为outdelay ms的“动画”类-尝试将队列链接在一起,但不起作用-应用下面显示的“动画”类的基本代码 jQuery('.sr-animation').each(function() { if (jQuery(window).width() > 700)
jQuery('.sr-animation').each(function() {
if (jQuery(window).width() > 700) {
var visible = jQuery(this).visible(true);
var indelay = jQuery(this).attr("data-indelay");
var outdelay = jQuery(this).attr("data-outdelay");
if (!indelay) { indelay = 0; }
if (!outdelay){ outdelay = 0; }
if (jQuery(this).hasClass( "animated" )) {
} else if (visible) {
jQuery(this).delay(indelay).queue(function(){jQuery(this).addClass('animated')});
}
} else {
jQuery(this).addClass('animated');
}
});
感谢您的帮助,因为我在这里无能为力。我想我已经找到了解决办法。。我不太确定出列的作用是什么,但似乎有效-类随后消失-只是我认为它不会在“outdelay”时间段内完成
jQuery('.sr-animation').each(function() {
if (jQuery(window).width() > 700) {
var visible = jQuery(this).visible(true);
var indelay = jQuery(this).attr("data-indelay");
var outdelay = jQuery(this).attr("data-outdelay");
if (!indelay) { indelay = 0; }
if (!outdelay){ outdelay = 0; }
var duration = outdelay-indelay;
if (jQuery(this).hasClass( "animated" )) {
} else if (visible) {
jQuery(this).delay(indelay).queue(function(){jQuery(this).addClass('animated').dequeue()});
if(outdelay>0) { jQuery(this).delay(outdelay).queue(function(){jQuery(this).removeClass('animated')}); }
}
} else {
jQuery(this).addClass('animated');
}
});
找到了解决办法。。不太清楚排队的作用,但似乎有效。。