虽然可以通过控制输出缓冲区,但我不会那样做,主要是因为它会延迟JavaScript DOMReady事件。
如果你正在寻找一个视觉效果,你应该使用JavaScript(但我没有看到基于你的问题说什么任何理由阿贾克斯)。它可以用简单的setInterval
完成。考虑到最初为空<div id="hello">
:
var i = 0;
var timer = setInterval(function(){
if(i == 10000) {
clearInterval(timer);
return;
}
var div = document.getElementById('hello');
div.innerHTML += 'hello ' + i + '<br>';
i++;
}, 250);
我刚才看到您的编辑,现在我想到你居然要使用Ajax!你链接的例子确实如此。基本上,你必须在JavaScript中设置一个测试队列,每个测试都有一个唯一的URL。然后,这只是一次用Ajax发出一个请求的问题(jQuery和$.get
将是最简单的方法)。下面假设一个<ul>
,而不是从我前面的例子中,DIV,并且该服务器会返回一个成功或失败的消息对每个测试回应:
var tests = [
'http://example.com/test1',
'http://example.com/test2',
'http://example.com/test3',
];
function processQueue() {
if(tests.length > 0) {
var test = tests.shift();
$.get(test, function(response) {
$('#some_ul').append('<li>' + response + '</li>');
processQueue();
});
}
}
processQueue();
PHP处理,并输出发送到Web浏览器。您的Web浏览器可能会立即渲染它,或者它可能会以大块的形式渲染它。我建议你使用jQuery执行此。 – Blender
因为http是请求 - 响应系统,所以我相信只要使用ajax就可以。 –
它会像命令行一样工作,相当确定吗? –