0

Ok。シナリオは次のとおりです。

function DataFeed(){

  function PopulateData()
  {
    $('div#example').load('http://www.example.com', fxnCallBack);
  };

  function fxnCallBack()
  {
    PopulateData();
  }

  this.activator = function() {
    PopulateData();
  }

};

var example_obj = new DataFeed;
example_obj.activator();

上記のコードでは、ajax .load が 1 回実行されてから、コールバックが実行されます。しかし、コールバックは ajax 関数を再び開始しませんか?

前もって感謝します。

edit-改行が正しく表示されないのはなぜですか-.-

4

1 に答える 1

1
InternalError: too much recursion

通常、JavaScript エンジンには、再帰の回数または再帰の実行にかかる時間の上限があります。代わりにsetIntervalを使用します。

function DataFeed() {
    var interval;
    function PopulateData() { 
        $('div#example').load('http://www.example.com', function(data) {
            if(data == "clear_interval")
                interval = clearInterval(interval); // clear the interval
        }); 
    }

    this.activator = function() { 
        interval = setInterval(PopulateData, 1000); // run every second
    };
}
var example_obj = new DataFeed();
example_obj.activator();
于 2009-02-27T03:58:03.560 に答える