延迟不在jQuery中工作

延迟不在jQuery中工作,jquery,Jquery,我试图给jQuery函数添加一个延迟,以便它在页面和javascript完全加载后加载,但它仍然加载,就像没有延迟一样 $('.validate-state .select2-selection--single') .delay( 10000 ) .addClass('custom-alert'); 我正在调用上面的inside ready()函数。使用setTimeout函数,delay通常用于动画中 setTimeout(function(){ $('.validate-stat

我试图给jQuery函数添加一个延迟,以便它在页面和javascript完全加载后加载,但它仍然加载,就像没有延迟一样

$('.validate-state .select2-selection--single')
  .delay( 10000 )
  .addClass('custom-alert');

我正在调用上面的inside ready()函数。

使用
setTimeout
函数,
delay
通常用于动画中

setTimeout(function(){
 $('.validate-state .select2-selection--single')
  .addClass('custom-alert');
},10000);
如果希望在加载js和html后执行代码,则需要在页面就绪事件中触发代码

$(function(){
 $('.validate-state .select2-selection--single')
      .addClass('custom-alert');
})

使用
setTimeout
功能,
delay
通常用于动画中

setTimeout(function(){
 $('.validate-state .select2-selection--single')
  .addClass('custom-alert');
},10000);
如果希望在加载js和html后执行代码,则需要在页面就绪事件中触发代码

$(function(){
 $('.validate-state .select2-selection--single')
      .addClass('custom-alert');
})

延迟在
.addClass
上不起作用,它只会影响动画;实现这一点的方法类似于快速示例:

$(function(){
    setTimeOut( ()=>$(elem).addClass('custom-alert'), 1000 );
});
或者jQuery方式:

$(function(){
    $(elem).delay(1000).queue(function(){
        $(this).addClass("custom-alert").dequeue();
    });
});

延迟在
.addClass
上不起作用,它只会影响动画;实现这一点的方法类似于快速示例:

$(function(){
    setTimeOut( ()=>$(elem).addClass('custom-alert'), 1000 );
});
或者jQuery方式:

$(function(){
    $(elem).delay(1000).queue(function(){
        $(this).addClass("custom-alert").dequeue();
    });
});

要在加载整个页面后运行函数,只需使用
$(document).ready()
,如下所示:

$(document).ready(function() {
  $('.validate-state .select2-selection--single').addClass('custom-alert');
});

要在加载整个页面后运行函数,只需使用
$(document).ready()
,如下所示:

$(document).ready(function() {
  $('.validate-state .select2-selection--single').addClass('custom-alert');
});

您可以尝试改用
setTimeout()

引用自

对jQuery效果(包括动画)使用
.delay()

setTimeout()
最适合用于其他所有功能。例如,当您需要在某个经过的时间触发事件时

快速示例:

$(window).load(function() {
    setTimeout(function(){
        // you code here
    }, 1000); // 1000 is time in milliseconds
});

您可以尝试改用
setTimeout()

引用自

对jQuery效果(包括动画)使用
.delay()

setTimeout()
最适合用于其他所有功能。例如,当您需要在某个经过的时间触发事件时

快速示例:

$(window).load(function() {
    setTimeout(function(){
        // you code here
    }, 1000); // 1000 is time in milliseconds
});

@你是什么意思?延迟通常用于动画。你只能将延迟应用于与动画相关的功能。使用setTimeoutinstead@mplungjan:什么意思?延迟通常用于动画中您只能将延迟应用于与动画相关的功能。Use setTimeout instead意外地将此添加到@nullqube的答案中。抱歉,我是stack新手,还在学习如何发布答案/回复..我不小心将此添加到@nullqube的答案中。抱歉,我是stack新手,还在学习如何发布答案/回复。。