注册 登录
编程论坛 JavaScript论坛

初学问题

pusuiter 发布于 2009-12-31 10:26, 761 次点击
function test(){
  for(var i=0; i<3; i++){
  document.write(i+"<br>");
  document.body.onclick=function(){
  document.write(i);
  }
  }
  }
为什么document.write(i+"<br>");循环完才往下运行? 谢谢解答!
7 回复
#2
aspic2009-12-31 10:39
document.body.onclick被重写了


[ 本帖最后由 aspic 于 2009-12-31 10:43 编辑 ]
#3
aspic2009-12-31 10:45
程序代码:
(function test(){
    for(var i=0; i<3; i++){
        document.write(i+"<br />");
        (function(){
            alert(i);
        })()
    }
})()
试试这个
#4
aspic2009-12-31 10:45
上面这个才能看出来是顺序执行的
#5
pusuiter2009-12-31 11:01
看来我应该去加强下事件处理器的相关内容
#6
aspic2009-12-31 14:52
主要是 你的代码里面 i=0,1,2的时候 它没办法暂停下来 你没法很神速的去点 所以看不到你要的效果
#7
pusuiter2010-01-13 19:01
谢谢aspic
#8
pusuiter2010-01-13 19:20
我原以为,当i=0时在我没点之前,for循环不会往下运行,故i的值不会变。也许应该理解程序一直运行结束,才赶上去点
1