延迟JavaScript的函数执行

前端之家收集整理的这篇文章主要介绍了延迟JavaScript的函数执行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个 JQuery的.each循环,每次迭代调用一个参数的函数,有没有办法延迟这个函数调用?我已尝试过setTimeout,如下所示,但这不起作用,因为函数立即执行.
$.each(myArray,function (j,dataitem)
{
     setTimeout(function () { showDetails(dataitem) },300);
});

function showDetails(dataitem)
{
...
}

数组大小大约是20,我要做的是在一定的时间范围内分配函数调用而不是立即,任何想法如何实现这一点?我准备重写并重新调整函数调用方式以完成这项任务,任何帮助都将受到赞赏.

解决方法

您可以使用数组的索引动态计算间隔:
$.each(myArray,dataitem) {
    window.setTimeout(function () { 
        showDetails(dataitem) 
    },(j + 1) * 300);
});

猜你在找的JavaScript相关文章