我有这样的代码:
$('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)