理解javascript定时器中的单线程(2)

在“doing...please wait...”后面加了个setTimeout,延时执行,给了浏览器渲染的时间,这个时候会显示出“doing...please wait...”的字样,然后执行sleep函数,最后显示“done”。

后面有网友发现在firefox中不起作用,的确有这个问题,后面我修改了一下代码,将局部变量的声明,onclick的绑定放到了window.onload事件中,等页面结构加载完成后,我再做脚本操作。

<script type="text/javascript"> function sleep(ms) { //... } window.onload = function() { var doBtn = document.getElementById('doBtn'), status = document.getElementById('status'); var doBtn2 = document.getElementById('doBtn2') , status2 = document.getElementById('status2'); doBtn.onclick = function(e) { //... }; doBtn2.onclick = function(e) { //... }; }; </script>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wgypwy.html