setTimeout ("myClass.doAction()", 20);

解决方案 »

  1.   

    这个doAction为什么不写在外面
    function doAction() {
       ……    
       setTimeout ("doAction()", 20);
       }
      

  2.   

    因为doAction 有很多参数要接收
      

  3.   

    还有
    这个怎么实现
    function myClass()
    {
       this.doAction=function() {
       ……    
       setTimeout ("doAction()", 20);
       }
    }
    报错,说doAction()不行,请问内部方法的setTimeout自身递归怎么写?
      

  4.   

    试试这个
    setTimeout("this.doAction()",20);
      

  5.   

    调用的方法用下面的
    <script language=javascript defer>
    function myClass(objTest)
    {
       this.doAction=doAction
       function doAction() {
       var obj=document.getElementById("div1")
       obj.innerHTML=parseInt(obj.innerHTML)+1
       if(parseInt(obj.innerHTML)>50)
       {
        return;
       }
       this.doAction()
       }
    }
    var a = new myClass
    a.doAction();
    </script>
    <div id="div1">1
    </div>
      

  6.   

    因为你的doAction函数是隶属于myClass的一个子函数,或者说是一个局部变量,局部变量对于外部是不可访问的,你需要有一个方法,让window对象找得到这个doAction就可以了.<div id="tt"></div>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function myClass()
    {
    this.value = 1;
    this.doAction = function()
    {
    var _self = this;
    this.value += 1;
    document.getElementById("tt").innerHTML = this.value;
    setTimeout(function(){_self.doAction();}, 20);
    }
    }
    new myClass().doAction();
    //-->
    </SCRIPT>演示代码一段.
      

  7.   

    function myClass()
    {
       function doAction() {
       ……    
       setTimeout (doAction, 20)
       }
    }注意这里setTimeout (doAction, 20), 很多人以为这里用setTimeout ("doAction()", 20)
    和setTimeout (doAction, 20)是一样的, 一般情况下是一样的, 但你这种情况就不同了, 呵呵
      

  8.   

    function myClass()
    {
       function doAction() {
       ……    
       setTimeout (arguments.callee, 20)
       }
    }
    //这样也行
      

  9.   

    setTimeout ("doAction()", 20);
    为什么要用"doAction()"双引号呢??????
    你要么就
    setTimeout (doAction, 20);
    要么就
    setTimeout (function(){doAction()}, 20);第一个参数不是得是个方法对象而不是一个字符串吧?难道用字符串也可以?