setInterval(function(){
  this.doIt(...);
},间隔时间);   

解决方案 »

  1.   

    <script> 
    var test=function(){ 
    var _this=this
    _this.i=0, 
    _this.getValue=function(){ 
    return 100; 
    }, 
    _this.doIt=function(){ 
    _this.i++; 
    alert("kj___" +_this.i); 
    }, 
    _this.start=function(){   
    setInterval(this.doIt,2000);   

    }; 
    var myText=new test(); 
    myText.start(); 
    </script> 
      

  2.   

    <script> 
    var test=function(){ 
    this.i=0
    }
    test.prototype={
    doIt:function(txt) 

    this.i++; 
    alert("kj___" +this.i); 
    }, start:function(){   
    var o=this 
      setInterval(function(){o.doIt()},2000);   
      } 
    }; 
    var myText=new test(); 
    myText.start(); 
    </script> 
      

  3.   

    <script> 
    var test=function(){ 
    this.i=0, 
    this.getValue=function(){ 
    return 100; 
    }, 
    this.doIt=function(_object,txt) 

    _object.i++;   
    alert("kj___" +txt); 
    }, this.start=function()
    {   
      _object = this;
      setInterval(function()
      {
    _object.doIt.call(this,_object,_object.i);
      },2000);   

    }; 
    var myText=new test(); 
    myText.start(); 
    </script> 
      

  4.   

    <script> 
    var test=function(){ 
    this.i=0, 
    this.getValue=function(){ 
    return 100; 
    }, 
    this.doIt=function(_object,txt) 

    _object.i++;   
    alert("kj___" +txt); 
    }, this.start=function()
    {   
      _object = this;
      setInterval(function()
      {
    _object.doIt.call(this,_object,_object.i);
      },2000);   

    }; 
    var myText=new test(); 
    myText.start(); 
    </script> 
      

  5.   

    回复#3的帖子(能解释下吗?为什么楼主的不行)
    this指针放到方法中,需要“替代”一下子^_^
    <script> 
    var test=function(){ 
        var _this=this
        this.i=0, 
        this.getValue=function(){ 
            return 100; 
        }, 
        this.doIt=function(){ 
            _this.i++; 
            alert("kj___" +_this.i); 
        }, 
        this.start=function(){   
            setInterval(_this.doIt,2000);   
        } 
    }; 
    var myText=new test(); 
    myText.start(); 
    </script> 
      

  6.   

    LZ的代码这样就可以了:
    <script> 
    var test=function(){ 
    var _this=this
    this.i=0, 
    this.getValue=function(){ 
    return 100; 
    }, 
    this.doIt=function(txt) { 
    _this.i++; 
    alert("kj___" +txt); 
    }, 

    this.start=function(){   
      setInterval(function(){_this.doIt( _this.i)},2000);   

    }; 
    var myText=new test(); 
    myText.start(); 
    </script> 
      

  7.   

    也可以这样:<script> 
    var test=function(){ 
    var _this=this
        this.i=0, 
        this.getValue=function(){ 
            return 100; 
        }, 
        this.doIt=function(txt) { 
            _this.i++; 
            alert(txt+_this.i); 
        }, 
        
        this.start=function(txt){   
          setInterval(function(){_this.doIt(txt)},2000);   
        } 
    }; 
    var myText=new test(); 
    myText.start("caiying2009_"); 
    </script> 
      

  8.   

    就是你问的作用或问题!
    this.value虽然说是公共。也只能说是相对面言。
    你这里有一个闭包问题!
    大概是这样: function(){
       function (){do.....}
    }
    这种情况,外部函数不可以访问内部函数的任务value 这是绝对的。