如何延迟对函数的调用

时间:2011-03-31 13:07:36

标签: javascript jquery

我有以下代码调用另一个函数,即:

$('input[name='f01']:checked').each(function() {
                                  setCBCollection(this);
});

我的问题是,如何在每次调用setCBCollection(这个)时延迟说2秒?

感谢。

1 个答案:

答案 0 :(得分:7)

使用setTimeout

$('input[name="f01"]:checked').each(function() {
    var element = this;
    setTimeout(function() {
        setCBCollection(element);
    }, 2000);
});

setTimeout安排一个函数被称为 N 毫秒(大致,这些都不准确)。

请注意,我们将this抓取到事件处理函数的本地变量,然后我们传递给setTimeout的函数是对该变量的闭包(因为否则,{{1}的含义会迷路)。更多细节:


偏离主题:原文中存在语法错误,您在this引用的字符串中使用'而未转义它。我在上面的代码中将其更改为'