+ -
当前位置:首页 → 问答吧 → js循环的问题

js循环的问题

时间:2011-10-15

来源:互联网

弱弱的问一下,下面这段代码
<div id="theDiv"></div> <script> for(var i=0;i<100000;i++){ document.getElementById('theDiv').innerHTML=i; } </script>
 提示:您可以先修改部分代码再运行
为什么在循环中div中的内容不会变,而是在循环结束后才变的呢,我想要的效果是想在循环中体现div中的内容从0到99999的变化过程,但我不是单纯为了这个效果,而是因为在实际代码中,处理一些大数据时,而且循环中涉及到比较复杂的操作时,循环可能会用时比较久,然后我就想在这个过程中给用户一点进度条什么的,但是发现在循环中操作dom元素好像并不起效,求解

[ 本帖最后由 hcp8706 于 2011-10-15 19:24 编辑 ]

作者: hcp8706   发布时间: 2011-10-15

不是不起效,是太快了,应该结合setTimeout或者setInterval
在循环里面调用方法不如在循环外面定义变量有效率

作者: yangedie   发布时间: 2011-10-15

应该不是太快了的原因吧,因为特意把循环次数设得很大了,所以这个循环是需要一段时间的,但是在这段时间内却看不到循环里所作dom操作的变化

作者: hcp8706   发布时间: 2011-10-15