在自引用功能中传递字符串变量

时间:2014-01-16 19:09:28

标签: javascript jquery variables callback

我有这个函数,我试图在wordtype字符串变量再次运行时将其传递回相同的函数。

现在,除了第一次运行(当我实际输入字符串时) - 它显示wordtype未定义。我称之为:rotateWordsA('nouns');

如何使rotateWordsA(wordtype);实际传回字符串以用于下一轮动画?

i=0;
    function rotateWordsA(wordtype){
        console.log(wordtype);
        var xyz = "#"+wordtype+" div."+i;
        //console.log(xyz);

        $("#"+wordtype+" div."+i).fadeOut(1000).hide();
        //alert('hi');
        i++;
        //alert(i);
        if($("#"+wordtype+" div."+i).length){
            prev = i-1;
            $("#"+wordtype+" div."+prev).fadeOut(1000).hide("slow");
            $("#"+wordtype+" div."+i).fadeIn(1000).show();
            $("#"+wordtype+" div."+i).delay(1000).animate({
                                //display: "show",
                                //left: "+=500",
                                opacity: 1
                              }, 1000, function(){
                                setTimeout(function(){rotateWordsA()}, 2500)

                              });

                        }
                        else{

                            i=0;
                            rotateWordsA(wordtype);
                        }
    }

1 个答案:

答案 0 :(得分:3)

您没有在setTimeout

中将变量传递给函数调用
    setTimeout(function () {
        rotateWordsA(); // Pass variable here
    }, 2500)