| 
function loop( callback ){
var t = setInterval(function(){
   
d = $.ajax({
   type: "POST",
   url: "/ajax.html", // локальный файл, там текст "GOOD"
   dataType: "text",
   async: false,
   data: { func: 1 }
  
 }).responseText;
callback( d );
},1000);
this.stop = function(){ clearInterval(t); }
};//l
var t = new loop( console.log ); 
setTimeout( function(){t.stop();},3000) // через 3 сек остановка
 в консоли выводит GOOD три раза
 
 тут не могу запустить (скрипты запускается в ифрейме и на testbin)
 
 еще так
 
 
 
 
 
 
function loop( callback ){
var t = setInterval(function(){
   
$.ajax({
   type: "POST",
   url: "/ajax.html", // локальный файл, там текст "GOOD"
   dataType: "text",
   async: false,
   data: { func: 1 },
   error: function(){alert('Problem');},
   success : function(data) { callback(data); }
  
 }).responseText;
},1000);
this.stop = function(){ clearInterval(t); }
};//l
var t = new loop( console.log ); 
setTimeout( function(){t.stop();},3000) // через 3 сек остановка
 результаты одинаковые
 |