0

如何将一个函数传递给另一个函数并在特定时刻在另一个脚本中调用它?例如,我想做这样的事情:

var interval;   
var parallaxElements = function(elementSet,operacija){
    clearInterval(interval);
    var parallax = [];
    if(elementSet!=null){
        elementSet.find(".parallax").each(function(index) {
            parallax.push($(this));
        }); 
    }   
    parallaxTiming = 30;
    parallax = _.shuffle(parallax);

    interval = setInterval(function(){
        var elem = parallax.shift();        
        if(typeof(elem)!="undefined"){
             elem.stop().transition({
                y: "0px",
                z: "0px",
                duration:"850ms"
             })  
        }else{
            clearInterval(interval);

这是我希望调用传递函数的地方

            return operacija;
            };          
        }, parallaxTiming); 
    }

然后像这样调用函数:

parallaxElements(container,function(){ alert(123); });

任何帮助都会更有用。提前感谢所有答案。

4

3 回答 3

4

只要打电话operacija()

小演示代码:

var foo = function(operacija) {

  interval = setInterval(function(){
    clearInterval(interval);
    return operacija();
  }, 1000);
};

foo(function() { alert("123"); } );
于 2013-02-02T22:49:18.700 回答
2

更改return operacija;return operacija();

于 2013-02-02T22:49:36.230 回答
0

在我看来,您只是将函数作为函数返回,而不是其执行结果。

尝试这个:

return operacija.call();
于 2013-02-02T22:48:03.910 回答