我想在以下代码中添加2秒的延迟:
if (length < 20 & warningContainer.is(\':empty\')){
warningContainer.html(minLengthMessage);
el.addClass(\'input-error\');
}
我该怎么做?
我试过了:
warningContainer.delay(2000).html(minLengthMessage);
PS:我不知道如何编写JQuery代码
谢谢
答案 0 :(得分:4)
当你调用delay(2000)时,你实际在做的是调用delay(2000,“fx”),因为函数有一个可选的第二个参数(你希望延迟操作的队列名),默认为fx 。各种效果方法(fadeOut(),animate()等)都使用此队列,这就是delay()对它们产生影响的原因。
我认为你可以使用
setTimeout(function(){
// add your code
}, 2000);
https://www.mattlunn.me.uk/blog/2012/06/jquery-delay-not-working-for-you/
答案 1 :(得分:2)
我不确定.delay
如何在jQuery中工作,但你可以用旧的JS方式做到这一点。
setTimeout(function() {
warningContainer.delay(2000).html(minLengthMessage);
}, 2000);