javascript – 如何在jQuery.each函数的每个循环之间进行延迟?

前端之家收集整理的这篇文章主要介绍了javascript – 如何在jQuery.each函数的每个循环之间进行延迟?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这样的代码
$('li').each(function(){
   var data = $(this).text();
   requestFunction(data,function(status){
       if ( status == 'OK' ) do stuff...
   });
});

所以,我需要使用函数“requestFunction()”之间做一些延迟.我该怎么办?希望可以理解,谢谢.

解决方法

setTimeout在增加时间:
$('li').each(function(indexInArray){
   var data = $(this).text();
   setTimeout( function () {
       requestFunction(data,function(status){
           if ( status == 'OK' ) do stuff...
       });
   },indexInArray * 500);
});

如果您循环使用这些元素,我们希望增加超时时间,否则如果不延迟,则只有在我们的500 ms超时后,所有请求将同时触发.

>时间开始:0 ms>首次请求:0 ms(500 * 0)>第二请求:500 ms(500 * 1)>第三次请求:1000ms(500 * 2)

猜你在找的jQuery相关文章