张小生
2015-05-09 10:09
为什么12行和14行都要写setTimeout()呢?去掉后面的那个不行吗?
14行的代码使得页面在加载的时候延迟了一秒,然后页面加载完成,代码执行就不会有问题,否则在加载时js代码先执行时并没有获取到id为count的文本框值。也可以采取将该代码放置在body中。
可以,但是存在一个问题,<head></head>中的js在body加载之前就执行了,这时还不存在id=count的文本框,所以如果14行不是用setTimeout(startCount())进行延迟执行的话,文本框不会有变化,你改成startCount()也是没用的。
当然,你也可以不在14行使用setTimeout(startCount()),那么你要另外想办法让浏览器加载完body标签内的元素之后再调用js的startCount()函数,比如在</form>与</body>之间加上<script>startCount();</script>
可以,渲染的时候是后面的是首次调用startCount(),然后它再自循环,去掉的话,在body中onload或者其他达到相同效果的方法都可以
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题