このコードを使用している場合、jQuery からの成功の戻り時に setTimeout がアクティブ化されていません
function waitForEvents(last_id){
$.ajax({
type: "GET",
url: "/functions/ajax.php?func=feed&old_msg_id="+last_id,
async: true, /* If set to non-async, browser shows page as "Loading.."*/
cache: false,
timeout:50000, /* Timeout in ms */
success: function(data){
var json = jQuery.parseJSON(data);
if(json !== 'null') {
$.each(json.earnings, function (index, value) {
$('#feed').append(value);
});
var old_msg_id = json['last_id'];
}
alert("working");
setTimeout('waitForEvents(last_id)',"1000");
},
error: function (XMLHttpRequest, textStatus, errorThrown){
alert("Error:" + textStatus + " (" + errorThrown + ")");
setTimeout('waitForEvents(last_id)',"15000");
},
});
};
実際に(データ)を返しているため、settimeoutを再度アクティブにせずに応答を処理しているため、理由はわかりません