【发布时间】:2010-05-22 21:28:45
【问题描述】:
为什么在following code 中我会一次看到整个页面?谢谢!
HTML:
<div></div>
CSS:
div {
width: 100px;
height: 300px;
border: 1px solid black;
text-align: center;
}
Javascript:
$(function() {
for (var i=0; i<15; i++) {
sleep(100);
$("div").append("<span>--- " + i + " ---<br /></span>");
}
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > milliseconds){
break;
}
}
}
});
【问题讨论】:
-
你只在 JSFiddle 上测试过吗?我怀疑 JSFiddle 会阻止在脚本运行完成之前绘制结果,因为当我将
sleep(100)更改为sleep(1000)时,加载需要更长的时间。 -
哦,您可能应该使用
while (true)而不是for循环。 -
@Austin:这不是 JSFiddle,这只是 Javascript 当前在浏览器上的工作方式。那个 sleep 函数并没有做他想做的事情。
标签: javascript jquery html