原因是:
while(t<10){
setTimeout("document.getElementById('txt').value='"+t+" seconds!'",t*1000);
t++;
}将很快执行完毕,然后执行document.getElementById('txt').value="just ten seconds";之后定时器才会有超时也就是,setTimeout并不会等待你设定的时间。代码应该如下:
function timedText(){
timedText.count = 0; function showText(){
if(timedText.count < 10){
timedText.count++;
document.getElementById('txt').value=timedText.count +"seconds";
} else {
document.getElementById('txt').value="just ten seconds";
clearInterval(timedText.intervalId);
}
}
timedText.intervalId = setInterval(showText,1000);}
while(t<10){
setTimeout("document.getElementById('txt').value='"+t+" seconds!'",t*1000);
t++;
}将很快执行完毕,然后执行document.getElementById('txt').value="just ten seconds";之后定时器才会有超时也就是,setTimeout并不会等待你设定的时间。代码应该如下:
function timedText(){
timedText.count = 0; function showText(){
if(timedText.count < 10){
timedText.count++;
document.getElementById('txt').value=timedText.count +"seconds";
} else {
document.getElementById('txt').value="just ten seconds";
clearInterval(timedText.intervalId);
}
}
timedText.intervalId = setInterval(showText,1000);}
解决方案 »
- js调试时提示错误: 无法获取属性“setAttribute”的值: 对象为 null 或未定义如何解决!!????
- Acrobat Javascript实现文本批量替换
- 多级连动返回值怎么实现阿?
- |zyciis| 这两条iframe的js 怎么写成jquery 谢谢
- 怎样屏蔽免费空间的广告
- 关于在vista浏览器7下的xmlhttp
- 我有几个文字做到层里了,怎么能限制这个层的拖动范围,并取到这个层随意在这个限制区域拖动的坐标?
- js随机函数问题,请高手赐教!!
- 滚动条与分辨率的困惑,高手指教??????
- 各位老大:html,dhtml,xhtml,dtd,dom,xml模式之间的联系与区别以及发展历程?
- 这种效果如何做?
- 求一正则。
timedText.intervalId = setInterval(showText,1000);
请问这两句是派什么用啊?
最后还有个问题,你刚才不是说我原来的那段代码,while()……将很快执行完毕,然后执行document.getElementById('txt').value="just ten seconds";
之后定时器才会有超时那我想问的是,当定时器之后在响应,while语句不是已经执行完了吗,那t不是已经变成10了嘛,那为什么那个读秒还是从1开始读。
setTimeout("document.getElementById('txt').value='1 seconds!'",t*1000);
而当t=2时,则
setTimeout("document.getElementById('txt').value='2 seconds!'",t*1000);