javascript函数之间的jquery延迟

时间:2012-08-02 16:41:43

标签: javascript jquery delay

我将乘法函数的参数简化为:

    function f1(p1,p2){
        alert('Function one is P1:'+p1+' P2:'+p2);        
    }
    function f2(p1,p2){
        alert('Function two is P1:'+p1+' P2:'+p2);
    }

我需要解雇这些是一个延迟之间的序列。但是我发现jQuery不喜欢用参数运行函数。我试过.click函数。

$.delay(1000).click(f1('One',false)).delay(1000).click(f2('One',false));

但延迟使点击功能无效......

4 个答案:

答案 0 :(得分:9)

我只想使用一个简单的超时:

f1("one", false);
setTimeout(function() { f2("one", false); }, 1000);

答案 1 :(得分:0)

$.delay(1000).click(function(){f1('One',false);}).delay(1000).click(function(){f2('One',false);});

不确定点击是什么......

答案 2 :(得分:0)

如果你想延迟函数调用,那么更简单的方法是使用setTimeout()。

例如: //在嵌套的setTimeout中调用它以进行顺序延迟执行     的setTimeout(函数(){

 f1('One',false);
  setTimeout(function(){
    f1('One',false)
  },300)
},300)

答案 3 :(得分:0)

function fn1()
{
    alert(1);
}
function fn2()
{
    alert(2);
}
var arr=[fn1,fn2];
var len=arr.length;
var time=1000;
for(var k=0;k<len;k++)
{
    (function(k)
    {
        setTimeout(arr[k],time);
    }(k))
    time=time*2;
}

延迟1秒后执行! DEMO